@liberfi.io/ui-predict 4.0.77 → 4.0.78

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.mjs CHANGED
@@ -1,9 +1,9 @@
1
- import {createContext,memo,useRef,forwardRef,useState,useImperativeHandle,useMemo,useEffect,useCallback,useContext,createElement,Fragment as Fragment$1,useSyncExternalStore,useLayoutEffect,startTransition,Component}from'react';import {themeSemanticColors,PolymarketIcon,KalshiIcon,cn as cn$1,Skeleton,toast,StyledModal,THEMED_MODAL_BASE_CLASS,ModalContent,useDisclosure,Tabs,Tab,StyledInput,StyledSwitch,Select,SelectItem,StyledNumberInput,ChevronDownIcon,Button,Spinner,useScreen,TimerIcon,DropletIcon,ChartLineIcon,CalendarIcon,Linkable,Avatar,ChevronUpIcon,OrderbookTableIcon,OrderbookDepthIcon,RefreshIcon,Dropdown,DropdownTrigger,DropdownMenu,DropdownItem,ChevronRightIcon,ChevronLeftIcon,EmptyIcon,TrashIcon,Chip,XCloseIcon,Kbd,SearchIcon,ModalHeader,ModalBody}from'@liberfi.io/ui';import {AsyncModal,useAsyncModal}from'@liberfi.io/ui-scaffold';import {useTranslation,Translation}from'@liberfi.io/i18n';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import {useWallets,useAuth,useAuthCallback}from'@liberfi.io/wallet-connector';import {useInfiniteMatchMarkets,useBalance,useDFlowKYC,usePolymarketSetup,usePredictClient,PolymarketContext,useTradeResultConfirmation,useTickSize,normalizePolymarketTickSize,useFeeRate,useRebateConfig,useRealtimeOrderbook,pickBestAsk,walkOrderbook,usePositionsMulti,useDFlowQuote,useDFlowSubmit,useOrder,buildSignedV2OrderPayload,buildCtfExchangeDomain,buildOrderMessage,CTF_ORDER_TYPES,buildSignedOrder,buildClobPayload,buildPolymarketL2Headers,resolveEventsParams,useInfiniteEvents,useRedeemPosition,pickBestBid,useAvailableShares,getPolymarketSharesPrecision,useInfiniteOrders,useCancelOrder,useInfiniteTrades,useMarketHistory,useSimilarEvents,useEvent,candlesticksQueryKey,useInfiniteComments,useInfinitePredictSearch,usePositions,usePositionValueMulti,usePredictWsClient,orderbookQueryKey}from'@liberfi.io/react-predict';export{PredictClient,PredictContext,PredictProvider,PredictWsClient,createPredictClient,createPredictWsClient,eventStatsQueryKey,fetchMatchMarketsPage,fetchMatchesPage,fetchPredictSearch,matchMarketsQueryKey,matchQueryKey,matchesQueryKey,predictSearchQueryKey,useBalance,useCancelOrder,useCandlesticks,useDFlowKYC,useDFlowQuote,useDFlowSubmit,useEvent,useEventStats,useEvents,useInfiniteEvents,useInfiniteMatchMarkets,useInfiniteMatches,useInfiniteOrders,useInfinitePredictSearch,useInfiniteTrades,useMarket,useMarketHistory,useMarketTrades,useMatch,useOrder,useOrderbook,useOrders,usePositionValue,usePositionValueMulti,usePositions,usePredictClient,usePredictSearch,usePriceHistory,useRedeemPosition,useSearchEvents,useSimilarEvents,useTrades}from'@liberfi.io/react-predict';import {ChainNamespace,Chain}from'@liberfi.io/types';import {formatAmountInUsd,SOLANA_TOKENS,formatAmount}from'@liberfi.io/utils';import yi from'canvas-confetti';import {keepPreviousData,useQueryClient,useQueries}from'@tanstack/react-query';import {List,useDynamicRowHeight}from'react-window';import {useInfiniteLoader}from'react-window-infinite-loader';import {useScrollCollapse,useResizeObserver,useCallbackRef}from'@liberfi.io/hooks';import {ResponsiveContainer,LineChart,CartesianGrid,XAxis,YAxis,Tooltip,Line,ReferenceDot}from'recharts';import {createBrowserSearchHistoryStorage,createMemorySearchHistoryStorage,useSearchKeyboardNavigation,useSearchController}from'@liberfi.io/ui/search';var bd={Weather:["Daily temperature","Snow and rain","Climate change","Natural disasters","Hurricanes"],Companies:["IPOs","Product launches","KPIs","Elon Musk","CEOs","Layoffs"],Crypto:["BTC","15 min","Hourly","ETH","SOL","DOGE","Pre-Market","XRP","BNB","HYPE"],Economics:["Growth","Fed","Inflation","Oil and energy","Employment","Housing","Jobs & Economy","Bankruptcy & Defaults","GDP","Global Central Banks"],Elections:["Primaries","International elections"],Entertainment:["Music","Movies","Music charts","Television","Awards","Video games","Oscars","Rotten Tomatoes"],Financials:["S&P","Nasdaq","Daily","Metals","Treasuries","Oil","EUR/USD","USD/JPY","WTI"],Mentions:["Politicians","Earnings","Entertainment"],Politics:["Trump","Congress","International","SCOTUS & courts","Local","Recurring","Iran","House"],Science:["AI","Energy","Space"],Social:null,Sports:["Soccer","Basketball","Baseball","Football","Hockey","Golf","Tennis","Motorsport","Esports","Boxing","MMA","Rugby","Lacrosse","Mentions","Chess","Cricket","Aussie Rules","Darts"],World:null},ta=["Politics","Sports","Crypto","Economics","Financials","Elections","Entertainment","Companies","Science and Technology","Climate and Weather","Mentions","Social","World"],an=(()=>{let e=t=>{let r=ta.indexOf(t);return r===-1?ta.length:r};return Object.entries(bd).map(([t,r])=>({slug:t,label:t,tags:(r??[]).map(o=>({slug:o,label:o}))})).sort((t,r)=>e(t.slug)-e(r.slug))})();function mi({categories:e,selectedCategory:t,selectedTag:r,activeTags:o,onCategorySelect:n,onTagSelect:i,trailing:s,pulsingTab:a="Trending",className:l}){let{t:p}=useTranslation(),d=useCallback(()=>{n(null);},[n]),c=p("predict.categories.trending");return jsxs("div",{className:cn$1("sticky top-0 z-30 flex w-full flex-col justify-between gap-2 px-4 py-2.5 lg:px-4 lg:py-2",l),children:[jsx("style",{children:".cat-primary-row{display:flex;width:100%;flex-direction:column;gap:8px}@media(min-width:1024px){.cat-primary-row{flex-direction:row;align-items:center}}.cat-primary-row>.cat-tabs{min-width:0;overflow-x:auto;overflow-y:hidden;-ms-overflow-style:none;scrollbar-width:none}.cat-primary-row>.cat-tabs::-webkit-scrollbar{display:none}@media(min-width:1024px){.cat-primary-row>.cat-tabs{flex:1 1 0%}}"}),jsxs("div",{className:"cat-primary-row",children:[jsx("div",{className:"cat-tabs hideScrollbar",children:jsxs("div",{className:"flex min-h-9 items-stretch gap-x-3 lg:min-h-10",children:[jsx(ra,{label:c,isSelected:t===null,onPress:d,showPulse:c===a}),jsx(Pd,{}),e.map(m=>{let u=m.slug??m.category,f=m.label??m.category;return jsx(ra,{label:f,isSelected:t===u,onPress:()=>n(u),badge:m.badge,showPulse:u===a||f===a},u)})]})}),s&&jsx("div",{className:"flex-shrink-0",children:s})]}),t&&o.length>0&&jsx("div",{className:"hideScrollbar overflow-x-auto overflow-y-hidden flex items-center",children:jsxs("div",{className:"flex gap-x-1.5 pl-1 lg:w-full lg:gap-x-2",children:[jsx(oa,{label:p("predict.categories.allMarkets"),isSelected:r===null,onPress:()=>i(null)}),o.map(m=>{let u=m.slug??m.label;return jsx(oa,{label:m.label,icon:m.icon,isSelected:r===u,onPress:()=>i(u)},u)})]})})]})}function ra({label:e,isSelected:t,onPress:r,badge:o,showPulse:n}){return jsxs("button",{type:"button",onClick:r,className:cn$1("relative shrink-0 cursor-pointer whitespace-nowrap border-b px-2.5 py-1.5 text-sm font-medium capitalize transition-colors",t?"border-primary/50 text-primary":"border-transparent text-text-muted hover:text-text-secondary"),children:[n?jsxs("span",{className:"flex items-center gap-x-1.5",children:[jsx("span",{className:"h-2 w-2 animate-pulse rounded-full bg-[rgb(240,68,56)]"}),jsx("span",{children:e})]}):e,o&&jsx("span",{className:"absolute -right-1 top-0 rounded bg-primary px-0.5 py-px text-[0.625rem] font-semibold leading-none text-text-inverse",children:o})]})}function Pd(){return jsx("span",{className:"flex items-center text-text-muted","aria-hidden":"true",children:"|"})}function oa({label:e,icon:t,isSelected:r,onPress:o}){return jsxs("button",{type:"button",onClick:o,className:cn$1("flex shrink-0 items-center justify-center gap-x-1 min-w-14 rounded-2xl border px-3 py-1.5 text-sm font-medium uppercase transition-colors cursor-pointer",r?"border-primary/40 bg-primary/15 text-primary":"border-border/80 text-text-muted hover:bg-primary/10 hover:text-primary"),children:[t&&jsx("span",{className:cn$1("iconify size-4",t)}),e]})}function Nd({count:e=6}){return jsx("div",{className:"flex w-full flex-col gap-2 px-4 py-2.5 lg:px-4 lg:py-2",children:jsx("div",{className:"flex min-h-9 items-center gap-x-3 lg:min-h-10",children:Array.from({length:e}).map((t,r)=>jsx(Skeleton,{className:"h-6 w-16 shrink-0 rounded"},r))})})}function ia(e){return e.trim().toLowerCase().replace(/&/g,"and").replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"")}function wd(e){return `predict.categories.category.${ia(e)}`}function sa(e){return `predict.categories.tag.${ia(e)}`}function Ed(e,t){return e.map(r=>({category:r.slug,slug:r.slug,label:t(wd(r.slug),r.label),tags:r.tags.map(o=>({slug:o.slug,label:t(sa(o.slug),o.label),icon:o.icon}))}))}function Cd(e,t){return e?e.tags.map(r=>({slug:r.slug,label:t(sa(r.slug),r.label),icon:r.icon})):[]}function gi({onSelect:e,trailing:t,className:r}){let{t:o}=useTranslation(),n=useCallback((f,g)=>{let h=o(f);return typeof h=="string"&&h!==f?h:g},[o]),[i,s]=useState(null),[a,l]=useState(null),p=useCallback(f=>{s(f),l(null),e?.({categorySlug:f,tagSlug:null});},[e]),d=useCallback(f=>{l(f),e?.({categorySlug:i,tagSlug:f});},[i,e]),c=Ed(an,n),m=an.find(f=>f.slug===i),u=Cd(m,n);return jsx(mi,{categories:c,selectedCategory:i,selectedTag:a,activeTags:u,onCategorySelect:p,onTagSelect:d,trailing:t,className:r})}function cn(e,t){return e?.trim()||t}function Kr(e){return cn(e.title_trans,e.title)??e.title}function hi(e){return cn(e.question_trans,e.question)??e.question}function vi(e){return cn(e.description_trans,e.description)}function dn(e){return cn(e.label_trans,e.label)??e.label}function lr(e){let t=e.outcomes?.[0];return t?dn(t):hi(e)}function un(e){return {title:Kr(e),imageUrl:e.image_url}}function pn(e,t){let r=e.outcomes[0],o=e.outcomes[1];return {question:hi(e),yesAsk:t?.yesAsk??r?.best_ask??r?.price,noAsk:t?.noAsk??o?.best_ask??o?.price,yesBid:t?.yesBid??r?.best_bid,noBid:t?.noBid??o?.best_bid,yesSubTitle:r?dn(r):lr(e),noSubTitle:o?dn(o):"No"}}var jr=24,mn=4,Vr={ONE_MINUTE:1,ONE_HOUR:60,ONE_DAY:1440},$={ONE_HOUR:"1h",SIX_HOURS:"6h",ONE_DAY:"1d",ONE_MONTH:"1m",ALL:"all"},bo=$.ALL,Rd={[$.ONE_HOUR]:Vr.ONE_MINUTE,[$.SIX_HOURS]:Vr.ONE_MINUTE,[$.ONE_DAY]:Vr.ONE_MINUTE,[$.ONE_MONTH]:Vr.ONE_MINUTE,[$.ALL]:Vr.ONE_MINUTE},Ld={[$.ONE_HOUR]:60,[$.SIX_HOURS]:60,[$.ONE_DAY]:300,[$.ONE_MONTH]:900,[$.ALL]:900},xi={[$.ONE_HOUR]:3600,[$.SIX_HOURS]:360*60,[$.ONE_DAY]:1440*60,[$.ONE_MONTH]:720*60*60,[$.ALL]:null},Od={[$.ONE_HOUR]:1,[$.SIX_HOURS]:1,[$.ONE_DAY]:5,[$.ONE_MONTH]:15,[$.ALL]:15},yo=1,ko=1,_d=1,Id=1,Dd=99,Pr={ONE_HOUR:"1h",SIX_HOURS:"6h",ONE_DAY:"1d",ONE_WEEK:"1w",MAX:"max"},Ad=Pr.ONE_WEEK,Fd={[Pr.ONE_HOUR]:60,[Pr.SIX_HOURS]:60,[Pr.ONE_DAY]:300,[Pr.ONE_WEEK]:1800,[Pr.MAX]:1800};var ca=createContext(null);function cr(){let e=useContext(ca);if(!e)throw new Error("usePredictWallet must be used within a PredictWalletProvider");return e}var $d=1e4;function da({pollingInterval:e=$d,enabled:t=true,enableKalshi:r=true,children:o}){let n=useWallets(),i=useMemo(()=>n.find(w=>w.chainNamespace===ChainNamespace.SOLANA&&w.isConnected)?.address,[n]),s=useMemo(()=>n.find(w=>w.chainNamespace===ChainNamespace.EVM&&w.isConnected)?.address,[n]),{data:a,isLoading:l,isFetching:p,error:d}=useBalance({source:"kalshi",user:i??""},{enabled:t&&r&&!!i,refetchInterval:e}),{data:c,isLoading:m}=useDFlowKYC(i,{enabled:t&&r&&!!i,refetchInterval:3e4}),{data:u,isLoading:f}=usePolymarketSetup(s,{enabled:t&&!!s,refetchInterval:3e4}),g=u?.safe_address,b=u?.verified??false,h=u?.wallet_kind??"deposit",S=u?.deposit_wallet_address,x=h==="safe"?u?.safe_address:S,y=h==="safe"?u?.safe_deployed??false:u?.deposit_wallet_deployed??false,{data:v,isLoading:k,isFetching:P,error:M}=useBalance({source:"polymarket",user:s??""},{enabled:t&&b&&!!s,refetchInterval:e}),N=useMemo(()=>({enableKalshi:r,solanaAddress:i,evmAddress:s,polymarketWalletKind:h,polymarketWalletAddress:x,polymarketDepositWalletAddress:S,polymarketWalletDeployed:y,polymarketSafeAddress:g,kalshiUsdcBalance:a?Number(a.balance):null,polymarketUsdcBalance:b&&v?Number(v.balance):null,kalshiKycVerified:c?.verified??false,kalshiKycUrl:c?.kyc_url??null,kalshiKycLoading:m,polymarketSetupVerified:b,polymarketSafeDeployed:u?.safe_deployed??false,polymarketTokenApproved:u?.token_approved??false,polymarketSetupLoading:f,isLoading:l||k,isFetching:p||P,error:d??M??null}),[r,i,s,h,x,S,y,g,a,v,b,c,m,u,f,l,k,p,P,d,M]);return jsx(ca.Provider,{value:N,children:o})}var Vd={minutes:60,hours:3600,days:86400};function So(e,t,r){let o=Math.floor(Date.now()/1e3);switch(e){case "5m":return o+300;case "1h":return o+3600;case "12h":return o+720*60;case "24h":return o+1440*60;case "eod":{let n=new Date;return n.setUTCHours(23,59,59,0),Math.floor(n.getTime()/1e3)}case "custom":return o+t*Vd[r]}}function Po(e,t){let r=parseFloat(t);return !r||r<=0?e:Math.round(e/r)*r}function be(e,t){let r=Math.pow(10,t);return Math.floor(e*r)/r}function ua(e){let t=e;return !Number.isFinite(t)||t<=0||t>=1?1:1-t}var pa=100,ma=300;function ki(e,t){return pa/1e4+Math.max(0,e)/1e4*ua(t)}function jd(e,t){let r=e?.[t],o=typeof r=="number"?r:Number(r);return Number.isFinite(o)?o:void 0}function Gd(e,t){let r=e?.[t];return typeof r=="string"?r:void 0}function Si(e){let t=jd(e,"polymarket.effectiveTakerFeeBps");if(t!==void 0&&t>=0)return t;let r=e?.["polymarket.feeDescriptor"],o=typeof r?.r=="number"?r.r:Number(r?.r);return Number.isFinite(o)&&o>=0?o*1e4:Gd(e,"polymarket.sportsMarketType")?ma:0}function Pi({source:e,usdcBalance:t,safetyBufferUsd:r=.01,feeRateBps:o=0,pricePerShare:n}){if(t==null||!Number.isFinite(t))return 0;let i=be(Math.max(0,t),2);if(e!=="polymarket")return i;let s=ki(o,n??NaN),a=i/(1+s)-r;return be(Math.max(0,a),2)}function Ni({usdcAmount:e,pricePerShare:t,feeRateBps:r}){if(!Number.isFinite(e)||e<=0)return 0;let o=ki(r,t);return e*o}function Mi({grossReturn:e,pricePerShare:t,feeRateBps:r}){if(!Number.isFinite(e)||e<=0)return 0;let o=ki(r,t);return e*o}function No(e,t,r){let o=e.match(/Size\s*\(([\d.]+)\)\s*lower than the minimum:\s*([\d.]+)/i);if(o)return t("predict.trade.polymarket.minOrderSize",{current:o[1],min:o[2]});let n=e.match(/balance:\s*(\d+),\s*sum of active orders:\s*(\d+)/i);if(n){let s=parseInt(n[1],10)/1e6,a=parseInt(n[2],10)/1e6,l=Math.max(0,s-a);return t("predict.trade.polymarket.insufficientBalance",{total:be(s,2).toFixed(2),active:be(a,2).toFixed(2),available:be(l,2).toFixed(2)})}return /not enough balance/i.test(e)?t(r==="sell"?"predict.trade.insufficientShares":"predict.trade.insufficientBalance"):/max accuracy of/i.test(e)?t("predict.trade.polymarket.decimalAccuracy"):/tick size/i.test(e)?t("predict.trade.polymarket.tickSizeError"):/couldn.*fully filled|FOK.*filled or killed/i.test(e)?t("predict.trade.polymarket.fokNotFilled"):e.replace(/order\s+0x[a-f0-9]+\s+is invalid\.\s*/i,"")||e}function Nr(e,t=2){return parseFloat(be(e,t).toFixed(t)).toString()}function wi(){let e={startVelocity:30,spread:360,ticks:60,zIndex:9999};yi({...e,particleCount:80,origin:{x:.5,y:.4}}),setTimeout(()=>{yi({...e,particleCount:40,origin:{x:.3,y:.6}});},150),setTimeout(()=>{yi({...e,particleCount:40,origin:{x:.7,y:.6}});},300);}function Gr(e,t){return {submitted:e("predict.trade.resultSubmitted"),completed:e("predict.trade.resultCompleted"),delayed:e("predict.trade.resultDelayed")}}function Xd({deadlineAt:e}){let[t,r]=useState(()=>Math.max(0,e-Date.now()));return useEffect(()=>{let o=setInterval(()=>{r(Math.max(0,e-Date.now()));},1e3);return ()=>clearInterval(o)},[e]),`${Math.max(0,Math.ceil(t/1e3))}s`}function Mr({id:e=`predict-trade-result-${Date.now()}`,durationMs:t=3e4,celebrateOnCompleted:r=false,messages:o}){return {id:e,submitted:()=>{let n=Date.now()+t;toast.progress({id:e,message:o.submitted,duration:t,progress:true,action:createElement(Xd,{deadlineAt:n})});},completed:()=>{toast.update(e,{type:"success",message:o.completed,duration:5e3}),r&&wi();},delayed:()=>{toast.update(e,{type:"blank",message:o.delayed,duration:8e3});},failed:n=>{toast.update(e,{type:"error",message:n,duration:8e3});}}}function Ci({market:e,initialOutcome:t="yes",slippageBps:r=100,onInsufficientBalance:o}){let{t:n,i18n:i}=useTranslation(),{status:s}=useAuth(),a=useWallets(),l=usePredictClient(),p=useContext(PolymarketContext),{start:d}=useTradeResultConfirmation(),c=e.source,m=c==="polymarket",u=a.find(D=>D.chainNamespace===ChainNamespace.SOLANA&&D.isConnected),f=a.find(D=>D.chainNamespace===ChainNamespace.EVM&&D.isConnected&&"switchChain"in D),g=s==="authenticated",b=u?.address,h=f?.address,[S,x]=useState(t),[y,v]=useState("market"),[k,P]=useState(NaN),[M,N]=useState(NaN),[w,R]=useState(false),[A,X]=useState(null),[L,G]=useState(false),[U,oe]=useState(false),[W,te]=useState("1h"),[ne,se]=useState(30),[he,Pe]=useState("minutes"),pt=useMemo(()=>Gr(n),[i,n]),Ve=true,Be=useCallback(async(D,De)=>{let Te=Mr({celebrateOnCompleted:true,messages:pt});Te.submitted(),await d({source:c,user:c==="kalshi"?b:h,kalshiUser:Ve?b:void 0,polymarketUser:h,marketSlug:e.slug,eventSlug:e.event_slug,expectation:D,getOrdersHeaders:De})==="confirmed"?Te.completed():Te.delayed();},[d,Ve,h,e.event_slug,e.slug,c,pt,b]),E=useMemo(()=>{if(c!=="polymarket")return;let D=e.provider_meta?.["polymarket.clobTokenIds"];return D?(typeof D=="string"?JSON.parse(D):D)[S==="yes"?0:1]:void 0},[c,e.provider_meta,S]),{data:st,isLoading:He}=useTickSize(E),ve=normalizePolymarketTickSize(st?.minimum_tick_size),{data:at,isLoading:we}=useFeeRate(E),Ue=at?.base_fee??0,qe=String(Ue),C=useMemo(()=>Si(e.provider_meta),[e.provider_meta]),{data:O}=useRebateConfig(),z=O?.builder_enabled&&O.builder_code?O.builder_code:void 0,Z=null,me=false,Ne=null,lt=false,ct,kt,Qe;try{let D=cr();Ve=D.enableKalshi,Z={kalshiUsdcBalance:D.kalshiUsdcBalance,polymarketUsdcBalance:D.polymarketUsdcBalance,isLoading:D.isLoading},me=D.kalshiKycVerified,Ne=D.kalshiKycUrl,lt=D.polymarketSetupVerified,ct=D.polymarketSafeAddress,kt=D.polymarketWalletKind,Qe=D.polymarketWalletAddress;}catch{}let Yt=c==="kalshi"&&!me,We=c==="polymarket"&&!lt,{data:et}=useRealtimeOrderbook({slug:e.slug,source:c,outcome:S},{enabled:e.status==="open"}),xe=useMemo(()=>{let D=pickBestAsk(et,S);if(D!=null&&D>0)return D;let De=S==="yes"?0:1,Te=e.outcomes[De];return Te?.best_ask??Te?.price??.5},[et,e.outcomes,S]),mt=useCallback(D=>{v(D);},[]),St=useCallback(D=>{x(D),N(NaN);},[]);useEffect(()=>{St(t);},[t,St]),useEffect(()=>{y==="limit"&&isNaN(M)&&N(Math.round(xe*1e4)/1e4);},[y,M,xe]);let Me=useMemo(()=>y==="limit"&&m&&!isNaN(M)?M:xe,[y,m,M,xe]),tt=useMemo(()=>isNaN(k)||k<=0?0:Me>0?k/Me:0,[k,Me]),Ce=useMemo(()=>walkOrderbook({orderbook:et,outcome:S,side:"buy",sharesNeeded:tt,slippageBps:r}),[et,S,tt,r]),Lt=useMemo(()=>Ce.status==="ok"&&Ce.worstPrice!=null&&Ce.worstPrice>0?Ce.worstPrice:xe,[Ce,xe]),I=useMemo(()=>isNaN(k)||k<=0?"0":String(Math.round(k*1e6)),[k]),_e=e.provider_meta?.["dflow.yesMint"]??"",Xe=e.provider_meta?.["dflow.noMint"]??"",mo=SOLANA_TOKENS.stablecoins.USDC.address,B=S==="yes"?_e:Xe,Ie=mo,Pt=B,Ft=c==="kalshi"?b??"":h??"",{data:fo,isLoading:ni}=usePositionsMulti({kalshi_user:c==="kalshi"?Ft:void 0,polymarket_user:c==="polymarket"?Ft:void 0},{enabled:!!Ft}),ii=c==="kalshi"&&!!Ie&&!!Pt&&!!b&&I!=="0",{refetch:qt}=useDFlowQuote({inputMint:Ie,outputMint:Pt,amount:I,userPublicKey:b??"",slippageBps:100},{enabled:ii}),Ir=useMemo(()=>Z?c==="kalshi"?Z.kalshiUsdcBalance:Z.polymarketUsdcBalance:fo&&fo.positions.reduce((De,Te)=>Te.side==="USDC"||Te.side==="collateral"?De+(Te.current_value??0):De,0)||null,[Z,fo,c]),si=Z?Z.isLoading:ni,ft=useMemo(()=>Pi({source:c,usdcBalance:Ir,feeRateBps:C,pricePerShare:Me}),[c,Ir,C,Me]),Ot=Ir==null?null:ft,Dr=useMemo(()=>isNaN(k)||k<=0?0:k,[k]),go=useMemo(()=>isNaN(k)||k<=0?0:Me>0?k/Me*1:0,[k,Me]),Ar=useMemo(()=>c!=="polymarket"||isNaN(k)||k<=0?0:Ni({usdcAmount:k,pricePerShare:Me,feeRateBps:C}),[c,k,Me,C]),sr=go-Dr-Ar,ai=useCallback(D=>{if(isNaN(D)){P(NaN);return}P(Math.round(Math.max(0,D)*100)/100);},[]),en=useCallback(D=>{if(isNaN(D)){N(NaN);return}N(Math.round(D*1e4)/1e4);},[]),Fr=useCallback(()=>{P(NaN),N(NaN),v("market"),oe(false),te("1h"),se(30),Pe("minutes");},[]),Qt=useMemo(()=>{let D=[];return isNaN(k)||k<=0?D.push(n("predict.trade.minAmountUsd",{amount:ko})):k<ko&&D.push(n("predict.trade.minAmountUsd",{amount:ko})),e.status!=="open"&&D.push(n("predict.trade.marketNotActive")),Ot!=null&&!isNaN(k)&&k>0&&k>Ot&&D.push(n("predict.trade.insufficientBalance")),y==="limit"&&m&&(isNaN(M)||M<.01||M>.99)&&D.push(n("predict.trade.limitPriceRange")),y==="limit"&&m&&U&&W==="custom"&&(isNaN(ne)||ne<=0)&&D.push(n("predict.trade.expiration.invalidDate")),c==="polymarket"&&y==="market"&&!isNaN(k)&&k>0&&tt>0&&(Ce.status==="insufficient_liquidity"?D.push(n("predict.trade.insufficientLiquidity",{available:be(Ce.totalAvailable,2)})):Ce.status==="exceeds_slippage"&&D.push(n("predict.trade.priceImpactTooHigh",{impact:(Ce.priceImpactBps/100).toFixed(2),slippage:(r/100).toFixed(2)}))),{isValid:D.length===0,errors:D}},[k,e.status,Ot,y,m,M,U,W,ne,c,tt,Ce,r,n]),vr=useMemo(()=>Ot==null||isNaN(k)||k<=0?false:k>Ot,[Ot,k]),xr=useCallback(()=>{o?.(c);},[o,c]),{mutateAsync:br}=useDFlowSubmit(),{data:ho}=useOrder({id:A??"",source:c},{enabled:!!A});useEffect(()=>{if(!ho||!A)return;let{status:D}=ho;D==="closed"?(X(null),R(false),Be("buy-market"),Fr()):(D==="failed"||D==="expired")&&(R(false),X(null),toast.error(n("predict.trade.submitError")));},[Be,ho,A,Fr,n]);let vo=useCallback(async()=>{if(!b||!u)return;if(!Ie||!Pt){toast.error("Missing token mint addresses"),R(false);return}if(!me){G(true),R(false);return}let It=(await qt()).data?.transaction;if(!It){toast.error(n("predict.trade.submitError")),R(false);return}let xo=Uint8Array.from(atob(It),gt=>gt.charCodeAt(0)),Xt=await u.signTransaction(xo),Jt=await br({signedTransaction:btoa(String.fromCharCode(...Xt)),orderContext:{user_public_key:b,input_mint:Ie,output_mint:Pt,amount:I,price:String(xe),side:"BUY",outcome:S==="yes"?"YES":"NO",market_slug:e.slug,slippage_bps:100}});X(Jt.signature);},[b,u,qt,br,Ie,Pt,I,xe,S,e.slug,n,me]),Br=useCallback(async()=>{if(!f||!p)return;let D=f.chain,De=D!==Chain.POLYGON;De&&await f.switchChain(Chain.POLYGON);try{let Te=await f.getEip1193Provider();if(!Te){toast.error(n("predict.trade.submitError")),R(!1);return}let It=kt==="deposit"&&!!Qe,xo=!It&&!!ct,Xt=It?Qe:ct,Jt={address:f.address,signatureType:It?3:xo?2:0,signTypedData:async(Dt,T,Re,Le)=>{let ze=[];"name"in Dt&&ze.push({name:"name",type:"string"}),"version"in Dt&&ze.push({name:"version",type:"string"}),"chainId"in Dt&&ze.push({name:"chainId",type:"uint256"}),"verifyingContract"in Dt&&ze.push({name:"verifyingContract",type:"address"}),"salt"in Dt&&ze.push({name:"salt",type:"bytes32"});let vt={EIP712Domain:ze,...T};return await Te.request({method:"eth_signTypedData_v4",params:[f.address,JSON.stringify({domain:Dt,types:vt,primaryType:Re,message:Le})]})}},gt=p.credentials??await p.authenticate(Jt),li=S==="yes"?0:1,tn="",Ut=e.provider_meta?.["polymarket.clobTokenIds"];Ut&&(tn=(typeof Ut=="string"?JSON.parse(Ut):Ut)[li]??"");let Hr=e.provider_meta?.["polymarket.negRisk"]??!1,Ur=y==="limit"&&!isNaN(M)?M:Lt,yr=Po(Ur,ve),rn=y==="limit"?U?"GTD":"GTC":"FOK",kr=y==="market"?k:yr>0?k/yr:0,Wr={tokenId:tn,price:yr,size:kr,side:"BUY",orderType:rn,tickSize:ve,negRisk:Hr,...Xt&&{funderAddress:Xt},...z&&{builderCode:z},...y==="limit"&&U&&{expiration:So(W,ne,he)}},zr;if(It)zr=await buildSignedV2OrderPayload({signer:Jt,depositWalletAddress:Xt,input:Wr,owner:gt.apiKey});else {let Dt=buildCtfExchangeDomain(Hr),T=buildOrderMessage({...Wr,signerAddress:Jt.address,signatureType:Jt.signatureType,feeRateBps:qe}),Re=await Jt.signTypedData(Dt,CTF_ORDER_TYPES,"Order",T),Le=buildSignedOrder(T,Re,Wr.orderType);zr=buildClobPayload(Le,gt.apiKey);}await l.executePolymarketOrder({payload:zr,l2_api_key:gt.apiKey,l2_secret:gt.secret,l2_passphrase:gt.passphrase,signer_address:gt.address,owner:gt.apiKey}),Be(y==="limit"?"buy-limit":"buy-market",async()=>await buildPolymarketL2Headers(gt.address,{apiKey:gt.apiKey,secret:gt.secret,passphrase:gt.passphrase,method:"GET",requestPath:"/data/orders"})),Fr(),R(!1);}finally{De&&D&&f.switchChain(D).catch(()=>{});}},[f,p,S,e.provider_meta,y,Be,M,Lt,k,l,U,W,ne,he,Fr,n,ve,qe,ct,kt,Qe,z]),_t=useCallback(async()=>{if(!(!Qt.isValid||!g)){R(true),X(null),G(false);try{c==="kalshi"?await vo():await Br();}catch(D){let De=D instanceof Error?D.message:"",Te=c==="polymarket"&&De?No(De,n,"buy"):De||void 0;toast.error(Te||n("predict.trade.submitError")),R(false);}}},[Qt.isValid,g,c,vo,Br,n]);return {outcome:S,orderType:y,quantity:k,limitPrice:M,shares:tt,effectivePrice:Me,estimatedCost:Dr,estimatedFee:Ar,potentialPayout:go,potentialProfit:sr,pricePerShare:xe,usdcBalance:Ir,maxBuyAmount:ft,spendableUsdcBalance:Ot,isBalanceLoading:si,isMarketDataLoading:c==="polymarket"&&(we||He),isSubmitting:w,authStatus:s,validation:Qt,isInsufficientBalance:vr,source:c,supportsLimitOrder:m,kycRequired:L,needsKyc:Yt,needsSetup:We,kycUrl:Ne,expirationEnabled:U,expirationPreset:W,customDuration:ne,customDurationUnit:he,setOutcome:St,setOrderType:mt,setQuantity:ai,setLimitPrice:en,setExpirationEnabled:oe,setExpirationPreset:te,setCustomDuration:se,setCustomDurationUnit:Pe,submit:_t,notifyInsufficientBalance:xr}}function wo({isOpen:e,onClose:t,kycUrl:r}){let{t:o}=useTranslation();return jsx(StyledModal,{isOpen:e,onOpenChange:n=>{n||t();},size:"md",classNames:{base:THEMED_MODAL_BASE_CLASS,body:"!p-0"},children:jsx(ModalContent,{children:jsxs("div",{children:[jsxs("div",{className:"flex items-center justify-between px-5 pt-5 pb-4",children:[jsx("h3",{className:"text-base font-semibold text-text-primary",children:o("predict.trade.kycModalTitle")}),jsx("button",{type:"button",onClick:t,className:"p-1 rounded-[10px] hover:bg-surface-strong/50 text-text-secondary hover:text-text-primary transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:jsxs("svg",{width:16,height:16,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round",children:[jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})})]}),jsxs("div",{className:"px-5 pb-5",children:[jsx("p",{className:"text-[13px] text-text-secondary mb-4 text-left",children:o("predict.trade.kycModalDescription")}),jsx("div",{className:"flex flex-col gap-2 mb-4",children:["predict.trade.kycModalBullet1","predict.trade.kycModalBullet2","predict.trade.kycModalBullet3"].map(n=>jsxs("div",{className:"flex items-center gap-2.5 text-[13px] text-text-secondary",children:[jsx("svg",{width:14,height:14,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2.5,strokeLinecap:"round",strokeLinejoin:"round",className:"text-brand-primary shrink-0",children:jsx("polyline",{points:"20 6 9 17 4 12"})}),jsx("span",{children:o(n)})]},n))}),r&&jsxs("a",{href:r,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 text-[13px] text-brand-primary/70 hover:text-brand-primary transition-colors mb-3",children:[o("predict.trade.goToKYC")," \u2192"]}),jsx("p",{className:"text-[11px] text-text-muted mb-5",children:o("predict.trade.kycModalNote")}),jsx("button",{type:"button",onClick:t,className:"w-full py-2.5 rounded-[10px] bg-action-primary text-text-inverse text-sm font-semibold hover:bg-action-primary-hover transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:o("common.ok")})]})]})})})}var Fu=["5m","1h","12h","24h","eod","custom"],Bu={"5m":"predict.trade.expiration.5m","1h":"predict.trade.expiration.1h","12h":"predict.trade.expiration.12h","24h":"predict.trade.expiration.24h",eod:"predict.trade.expiration.eod",custom:"predict.trade.expiration.custom"},Hu=["minutes","hours","days"],Uu={minutes:"predict.trade.expiration.minutes",hours:"predict.trade.expiration.hours",days:"predict.trade.expiration.days"},Wu={maximumFractionDigits:0},dr="-";function Li({event:e,market:t,variant:r="bordered",outcome:o,orderType:n,quantity:i,limitPrice:s,shares:a,effectivePrice:l,potentialProfit:p,potentialPayout:d,estimatedCost:c,estimatedFee:m=0,usdcBalance:u,isBalanceLoading:f,isMarketDataLoading:g,isSubmitting:b,authStatus:h,isValid:S,validationErrors:x,isInsufficientBalance:y,onInsufficientBalance:v,supportsLimitOrder:k,maxBuyAmount:P,kycRequired:M,needsKyc:N,needsSetup:w,kycUrl:R,expirationEnabled:A,expirationPreset:X,customDuration:L,customDurationUnit:G,oddsFormatter:U,outcomeLabels:oe,onOutcomeChange:W,onOrderTypeChange:te,onQuantityChange:ne,onLimitPriceChange:se,onExpirationEnabledChange:he,onExpirationPresetChange:Pe,onCustomDurationChange:pt,onCustomDurationUnitChange:Ve,onSubmit:Be}){let{t:E}=useTranslation(),[st,He]=useState(true),ve=useDisclosure(),[at,we]=useState(""),Ue=useRef(false);useEffect(()=>{Ue.current||we(isNaN(i)?"":String(i));},[i]);let[qe,C]=useState(""),O=useRef(false);useEffect(()=>{O.current||(isNaN(s)?C(""):C(String(parseFloat((s*100).toFixed(2)))));},[s]);let z=useCallback(B=>{if(B!==""&&!/^\d*\.?\d{0,2}$/.test(B))return;if(C(B),B===""||B==="."){se(NaN);return}let Pt=parseFloat(B);isNaN(Pt)||se(Pt/100);},[se]),Z=useCallback(B=>{if(B!==""&&!/^\d*\.?\d{0,2}$/.test(B))return;if(we(B),Xe(false),B===""||B==="."){ne(NaN);return}let Pt=parseFloat(B);isNaN(Pt)||ne(Pt);},[ne]);useEffect(()=>{M&&!ve.isOpen&&ve.onOpen();},[M,ve]);let me=useMemo(()=>{let B=o==="yes"?t.yesAsk:t.noAsk;return B!=null?parseFloat((Number(B)*100).toFixed(2)):null},[o,t]),Ne=o==="yes"?t.yesAsk:t.noAsk,lt=Ne!=null&&U?U(Number(Ne)):me!=null?`${me} \xA2`:dr,ct=Number.isFinite(l)?parseFloat((l*100).toFixed(2)):null,kt=Number.isFinite(l)&&U?U(l):ct!=null?`${ct} \xA2`:dr,Qe=!isNaN(i)&&i>0,Yt=Qe?c+m:0,We=Qe&&a>0?Yt/a:0,et=We>0&&U?U(We):We>0?`${parseFloat((We*100).toFixed(2))}\xA2`:dr,xe=h==="authenticated",mt=h==="authenticating"||h==="deauthenticating",St=xe&&(N||w),Me=useCallback(B=>oe?.[B]??E(B==="yes"?"predict.trade.yes":"predict.trade.no"),[oe,E]),tt=useMemo(()=>{if(mt)return E("predict.trade.checkingLogin");if(!xe)return E("predict.trade.loginToTrade");if(N)return E("predict.trade.kycRequired");if(w)return E("predict.trade.setupRequired");if(f)return E("predict.trade.loadingBalance");if(g)return E("predict.trade.loadingMarketData");if(b)return E("predict.trade.submitting");if(M)return E("predict.trade.kycRequired");if(!Qe)return E("predict.trade.enterAmount");let B=Me(o),Ie=p>0?` \u2192 Win $${p.toFixed(2)}`:"";return `${E("predict.trade.buy")} ${B}${Ie}`},[mt,xe,N,w,f,g,b,M,Qe,o,Me,p,E]),Ce="primary",Lt=()=>{let B=P??be(u??0,2);ne(be(B/2,2));},I=()=>{ne(P??be(u??0,2));},[_e,Xe]=useState(false),mo=()=>{if(!xe){Xe(false),Be();return}if(N){ve.onOpen();return}if(w&&v){Xe(false),v();return}if(M){ve.onOpen();return}if(y&&v){Xe(false),v();return}if(!S){Xe(true);return}Xe(false),Be();};return jsxs(Fragment,{children:[jsxs("div",{className:"flex w-full flex-col gap-y-4 p-4",style:r==="bordered"?{borderRadius:14,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content2) / 0.4)",transition:"border-color 0.2s"}:void 0,onMouseEnter:B=>{r==="bordered"&&(B.currentTarget.style.borderColor="hsl(var(--heroui-content4) / 0.8)");},onMouseLeave:B=>{r==="bordered"&&(B.currentTarget.style.borderColor="hsl(var(--heroui-content3) / 0.6)");},children:[e&&jsxs("div",{className:"flex items-center gap-x-3",children:[e.imageUrl&&jsx("img",{src:e.imageUrl,alt:e.title,className:"h-10 w-10 shrink-0 rounded-lg object-cover"}),jsxs("div",{className:"flex min-w-0 flex-col gap-y-0.5",children:[jsx("span",{className:"text-sm text-text-muted leading-tight line-clamp-1",children:e.title}),jsxs("span",{className:"text-base font-semibold leading-tight line-clamp-1",children:[jsx("span",{className:"text-foreground",children:t.yesSubTitle}),jsx("span",{className:"text-foreground",children:" \xB7 "}),jsxs("span",{className:"text-positive",children:[E("predict.trade.buy")," ",Me(o)]})]})]})]}),jsxs("div",{className:"flex items-center justify-between",children:[k?jsxs(Tabs,{variant:"underlined",selectedKey:n,onSelectionChange:B=>te(B),classNames:{tabList:"gap-x-4",tab:"px-0"},children:[jsx(Tab,{title:E("predict.trade.market")},"market"),jsx(Tab,{title:E("predict.trade.limit")},"limit")]}):jsx("span",{className:"text-sm font-medium text-foreground",children:E("predict.trade.market")}),n==="limit"&&k?jsx(StyledInput,{"aria-label":E("predict.trade.limitPrice"),placeholder:"50",size:"sm",radius:"none",inputMode:"decimal",value:qe,onChange:B=>z(B.target.value),onFocus:()=>{O.current=true;},onBlur:()=>{O.current=false,isNaN(s)?C(""):C(String(parseFloat((s*100).toFixed(2))));},endContent:jsx("span",{className:"text-xl font-bold tabular-nums text-foreground",children:"\xA2"}),classNames:{base:"w-28",inputWrapper:"bg-content2 data-[hover=true]:bg-content2 group-data-[focus=true]:bg-content2 rounded-lg px-2 h-9 min-h-9",input:"text-xl font-bold tabular-nums text-right"}}):lt!=null&&jsx("span",{className:"text-xl font-bold tabular-nums",children:lt})]}),jsx("div",{className:"flex gap-x-2",children:["yes","no"].map(B=>{let Ie=B==="yes"?t.yesAsk:t.noAsk;return jsx("div",{className:"flex flex-1 flex-col gap-y-1",children:jsxs("button",{type:"button",onClick:()=>W(B),className:`w-full rounded-lg border py-2 text-sm font-medium transition-colors cursor-pointer ${o===B?"border-positive bg-positive/10 text-positive":"border-default-400 text-foreground hover:border-default-500"}`,children:[jsx("span",{children:Me(B)}),Ie!=null&&jsx("span",{className:"ml-1 opacity-70",children:U?U(Number(Ie)):`${parseFloat((Number(Ie)*100).toFixed(2))}\xA2`})]})},B)})}),jsxs("div",{className:"flex flex-col gap-y-1.5",children:[jsxs("div",{className:"flex items-center justify-between text-xs text-text-muted",children:[jsx("span",{className:"text-sm font-medium text-foreground",children:E("predict.trade.youArePaying")}),jsxs("div",{className:"flex items-center gap-x-2",children:[jsx("button",{type:"button",onClick:Lt,className:"rounded px-1.5 py-0.5 bg-content2 hover:bg-content3 transition-colors cursor-pointer text-text-muted hover:text-foreground font-medium",children:E("predict.trade.half")}),jsx("button",{type:"button",onClick:I,className:"rounded px-1.5 py-0.5 bg-content2 hover:bg-content3 transition-colors cursor-pointer text-text-muted hover:text-foreground font-medium",children:E("predict.trade.max")})]})]}),jsx(StyledInput,{"aria-label":E("predict.trade.tradeAmount"),fullWidth:true,placeholder:"0",radius:"lg",size:"lg",inputMode:"decimal",value:at,onChange:B=>Z(B.target.value),onFocus:()=>{Ue.current=true;},onBlur:()=>{Ue.current=false,we(isNaN(i)?"":String(i));},startContent:jsx("span",{className:"text-text-muted text-xl",children:"$"}),classNames:{inputWrapper:"bg-content2 data-[hover=true]:bg-content2 group-data-[focus=true]:bg-content2 h-14 min-h-14",input:"text-lg"}}),_e&&x.length>0&&jsx("div",{className:"flex flex-col gap-y-0.5",children:x.map(B=>jsx("span",{className:"text-xs text-danger",children:B},B))})]}),jsxs("div",{className:"flex items-center justify-end gap-x-1.5 text-sm",children:[jsx("span",{className:"text-text-muted",children:E("predict.trade.balance")}),jsx("span",{className:"font-medium text-foreground tabular-nums",children:u!=null?`$${be(u,2).toFixed(2)}`:"$0"})]}),n==="limit"&&k&&jsxs("div",{className:"flex flex-col gap-y-2",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{className:"text-sm font-medium text-primary",children:E("predict.trade.setExpiration")}),jsx(StyledSwitch,{size:"sm",color:"primary",isSelected:A,onValueChange:he,"aria-label":E("predict.trade.setExpiration")})]}),A&&jsxs(Fragment,{children:[jsx(Select,{"aria-label":E("predict.trade.setExpiration"),selectedKeys:[X],onSelectionChange:B=>{let Ie=Array.from(B)[0];Ie&&Pe(Ie);},size:"sm",radius:"lg",classNames:{trigger:"bg-content2 data-[hover=true]:bg-content2 min-h-10",value:"text-sm"},children:Fu.map(B=>jsx(SelectItem,{children:E(Bu[B])},B))}),X==="custom"&&jsxs("div",{className:"flex gap-x-2",children:[jsx(StyledNumberInput,{"aria-label":E("predict.trade.durationAmount"),size:"sm",radius:"lg",value:isNaN(L)?void 0:L,onValueChange:pt,minValue:1,step:1,formatOptions:Wu,classNames:{base:"flex-1",inputWrapper:"bg-content2 data-[hover=true]:bg-content2 group-data-[focus=true]:bg-content2 min-h-10",input:"text-sm"}}),jsx(Select,{"aria-label":E("predict.trade.durationUnit"),selectedKeys:[G],onSelectionChange:B=>{let Ie=Array.from(B)[0];Ie&&Ve(Ie);},size:"sm",radius:"lg",classNames:{base:"w-32",trigger:"bg-content2 data-[hover=true]:bg-content2 min-h-10",value:"text-sm"},children:Hu.map(B=>jsx(SelectItem,{children:E(Uu[B])},B))})]})]})]}),jsxs("div",{className:"flex flex-col gap-y-2",children:[jsxs("div",{className:"flex items-center justify-between text-sm",children:[jsxs("button",{type:"button",onClick:()=>He(B=>!B),className:"flex items-center gap-x-1 text-text-muted hover:text-foreground cursor-pointer transition-colors",children:[jsx("span",{children:E("predict.trade.odds")}),jsx(ChevronDownIcon,{className:cn$1("h-3.5 w-3.5 transition-transform",st&&"rotate-180")})]}),jsx("span",{className:"text-foreground font-medium tabular-nums",children:U&&Number.isFinite(l)?kt:ct!=null?E("predict.trade.chance",{percent:ct}):dr})]}),st&&jsxs("div",{className:"flex flex-col gap-y-1.5 border-l-2 border-default-300 pl-3 text-sm text-text-muted",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.totalSize")}),jsx("span",{className:"tabular-nums text-foreground",children:!isNaN(i)&&i>0?`$${c.toFixed(2)}`:dr})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.numContracts")}),jsx("span",{className:"tabular-nums text-foreground",children:!isNaN(a)&&a>0?Nr(a):dr})]}),m>0&&jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.estFee")}),jsx("span",{className:"tabular-nums text-foreground",children:`$${m.toFixed(2)}`})]}),m>0&&jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.totalPayment")}),jsx("span",{className:"tabular-nums text-foreground",children:`$${Yt.toFixed(2)}`})]}),m>0&&jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.effectiveOdds")}),jsx("span",{className:"tabular-nums text-foreground",children:et})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.payout")}),jsx("span",{className:"tabular-nums text-foreground",children:!isNaN(i)&&i>0?`$${d.toFixed(2)}`:dr})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.estProfit")}),jsx("span",{className:"tabular-nums text-positive",children:!isNaN(i)&&i>0&&p>0?`+$${p.toFixed(2)}`:dr})]})]})]}),jsx(Button,{color:Ce,fullWidth:true,radius:"lg",size:"lg",isDisabled:mt||xe&&!St&&(f||g||!Qe||b),isLoading:mt||xe&&!St&&(b||f||g),spinner:jsx(Spinner,{size:"sm",color:"current"}),onPress:mo,children:tt})]}),jsx(wo,{isOpen:ve.isOpen,onClose:ve.onClose,kycUrl:R})]})}function Eo({event:e,market:t,variant:r,initialOutcome:o,chain:n,slippageBps:i,onInsufficientBalance:s,onOutcomeChange:a,oddsFormatter:l,outcomeLabels:p}){let{outcome:d,orderType:c,quantity:m,limitPrice:u,shares:f,effectivePrice:g,estimatedCost:b,estimatedFee:h,potentialPayout:S,potentialProfit:x,pricePerShare:y,usdcBalance:v,maxBuyAmount:k,isBalanceLoading:P,isMarketDataLoading:M,isSubmitting:N,authStatus:w,validation:R,isInsufficientBalance:A,supportsLimitOrder:X,kycRequired:L,needsKyc:G,needsSetup:U,kycUrl:oe,expirationEnabled:W,expirationPreset:te,customDuration:ne,customDurationUnit:se,setOutcome:he,setOrderType:Pe,setQuantity:pt,setLimitPrice:Ve,setExpirationEnabled:Be,setExpirationPreset:E,setCustomDuration:st,setCustomDurationUnit:He,submit:ve,notifyInsufficientBalance:at}=Ci({market:t,initialOutcome:o,slippageBps:i,onInsufficientBalance:s}),we=useAuthCallback(ve),Ue=useCallback(O=>{he(O),a?.(O);},[he,a]),qe=useMemo(()=>e?un(e):void 0,[e]),C=useMemo(()=>pn(t,{yesAsk:d==="yes"?y:void 0,noAsk:d==="no"?y:void 0}),[t,d,y]);return jsx(Li,{event:qe,market:C,variant:r,outcome:d,orderType:c,quantity:m,limitPrice:u,shares:f,effectivePrice:g,estimatedCost:b,estimatedFee:h,potentialPayout:S,potentialProfit:x,usdcBalance:v,maxBuyAmount:k,isBalanceLoading:P,isMarketDataLoading:M,isSubmitting:N,authStatus:w,isValid:R.isValid,validationErrors:R.errors,isInsufficientBalance:A,onInsufficientBalance:s?at:void 0,supportsLimitOrder:X,kycRequired:L,needsKyc:G,needsSetup:U,kycUrl:oe,expirationEnabled:W,expirationPreset:te,customDuration:ne,customDurationUnit:se,oddsFormatter:l,outcomeLabels:p,onOutcomeChange:Ue,onOrderTypeChange:Pe,onQuantityChange:pt,onLimitPriceChange:Ve,onExpirationEnabledChange:Be,onExpirationPresetChange:E,onCustomDurationChange:st,onCustomDurationUnitChange:He,onSubmit:we})}var qr="predict-trade";function Co({id:e=qr}){return jsx(AsyncModal,{id:e,children:t=>jsx(Xu,{...t})})}function Xu({params:e,isOpen:t,onOpenChange:r}){let{t:o}=useTranslation(),{isMobile:n}=useScreen();return e?jsx(StyledModal,{isOpen:t,onOpenChange:r,size:n?"lg":"md",backdrop:"opaque",hideCloseButton:true,classNames:{base:THEMED_MODAL_BASE_CLASS,body:"!p-0"},children:jsx(ModalContent,{children:jsxs("div",{className:n?"":"p-2",children:[jsx(Eo,{event:e.event,market:e.market,initialOutcome:e.initialOutcome,chain:e.chain,slippageBps:e.slippageBps,variant:"flat",onInsufficientBalance:e.onInsufficientBalance}),jsx("div",{className:"px-4 pb-4",children:jsx("button",{type:"button",onClick:()=>r(false),className:"w-full h-12 rounded-xl text-sm font-medium text-text-secondary hover:text-text-primary hover:bg-surface-strong/50 transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:o("common.cancel")})})]})})}):null}var Xr={sortPreset:"volume",sortAsc:false,source:void 0,timeRemaining:void 0,minVolume:void 0,minLiquidity:void 0};function bn(e,t=true){let r=0;return t&&e.source&&r++,e.timeRemaining&&r++,e.minVolume&&r++,e.minLiquidity&&r++,r}function Oi({isOpen:e,onClose:t,value:r,onChange:o,enableKalshi:n=true}){let{t:i}=useTranslation(),[s,a]=useState(r),l=useMemo(()=>n?Xr:{...Xr,source:"polymarket"},[n]),p=useCallback(S=>{S?a(r):t();},[r,t]),d=useCallback(()=>{a(l);},[l]),c=useCallback(()=>{o(s),t();},[s,o,t]),m=useCallback((S,x)=>{a(y=>({...y,[S]:x}));},[]),u=useMemo(()=>bn(s,n),[s,n]),f=useMemo(()=>[{value:void 0,label:i("predict.filter.all")},{value:"polymarket",label:i("predict.platform.polymarket")},{value:"kalshi",label:i("predict.platform.kalshi")}],[i]),g=useMemo(()=>[{value:void 0,label:i("predict.filter.all")},{value:"1d",label:i("predict.filter.lessThanDay")},{value:"7d",label:i("predict.filter.lessThanWeek")},{value:"30d",label:i("predict.filter.lessThanMonth")}],[i]),b=useMemo(()=>[{value:void 0,label:i("predict.filter.all")},{value:"1000",label:">$1K"},{value:"10000",label:">$10K"},{value:"100000",label:">$100K"},{value:"1000000",label:">$1M"}],[i]),h=useMemo(()=>[{value:void 0,label:i("predict.filter.all")},{value:"1000",label:">$1K"},{value:"10000",label:">$10K"},{value:"100000",label:">$100K"},{value:"1000000",label:">$1M"}],[i]);return jsx(StyledModal,{isOpen:e,onOpenChange:p,size:"md",backdrop:"opaque",scrollBehavior:"inside",classNames:{base:THEMED_MODAL_BASE_CLASS,body:"!p-0"},children:jsx(ModalContent,{children:jsxs("div",{children:[jsxs("div",{className:"flex items-center justify-between px-5 pt-5 pb-4",children:[jsx("h3",{className:"text-base font-semibold text-text-primary",children:i("predict.filter.title")}),jsx(np,{onClick:()=>p(false)})]}),jsxs("div",{style:{padding:"0 20px 16px",display:"flex",flexDirection:"column",gap:20},children:[n&&jsx(vn,{label:i("predict.filter.platform"),children:jsx(xn,{options:f,selected:s.source,onSelect:S=>m("source",S)})}),jsx(vn,{label:i("predict.filter.timeRemaining"),children:jsx(xn,{options:g,selected:s.timeRemaining,onSelect:S=>m("timeRemaining",S)})}),jsx(vn,{label:i("predict.filter.minVolume"),children:jsx(xn,{options:b,selected:s.minVolume,onSelect:S=>m("minVolume",S)})}),jsx(vn,{label:i("predict.filter.minLiquidity"),children:jsx(xn,{options:h,selected:s.minLiquidity,onSelect:S=>m("minLiquidity",S)})})]}),jsxs("div",{className:"flex items-center gap-3 px-5 py-4",style:{borderTop:"1px solid var(--color-border-subtle)"},children:[jsx("button",{type:"button",className:"inline-flex items-center justify-center py-2.5 px-5 rounded-[10px] text-text-secondary text-sm font-medium hover:text-text-primary transition-colors cursor-pointer",onClick:d,children:i("predict.filter.reset")}),jsxs("button",{type:"button",className:"flex-1 inline-flex items-center justify-center gap-2 py-2.5 rounded-[10px] bg-action-primary text-text-inverse text-sm font-semibold hover:bg-action-primary-hover transition-colors cursor-pointer",onClick:c,children:[i("predict.filter.showResults"),u>0&&jsxs("span",{style:{opacity:.7},children:["(",u,")"]})]})]})]})})})}function vn({label:e,children:t}){return jsxs("div",{style:{display:"flex",flexDirection:"column",gap:10},children:[jsx("span",{style:{fontSize:11,fontWeight:500,color:"var(--color-text-muted)",textTransform:"uppercase",letterSpacing:"0.05em"},children:e}),t]})}function np({onClick:e}){return jsx("button",{type:"button",onClick:e,className:"p-1 rounded-[10px] hover:bg-surface-strong/50 text-text-secondary hover:text-text-primary transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:jsxs("svg",{width:16,height:16,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round",children:[jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})})}function xn({options:e,selected:t,onSelect:r,allowDeselect:o=true}){return jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:8},children:e.map(n=>{let i=t===n.value;return jsx("button",{type:"button",onClick:()=>{r(i&&o?void 0:n.value);},style:{flexShrink:0,borderRadius:10,padding:"6px 14px",fontSize:13,fontWeight:500,cursor:"pointer",transition:"all 0.15s",border:i?"1px solid color-mix(in srgb, var(--color-action-primary) 30%, transparent)":"1px solid var(--color-border-subtle)",background:i?"color-mix(in srgb, var(--color-action-primary) 8%, transparent)":"hsl(var(--heroui-content3) / 0.4)",color:i?"var(--color-action-primary)":"var(--color-text-secondary)"},onMouseEnter:s=>{i||(s.currentTarget.style.background="hsl(var(--heroui-content3) / 0.8)",s.currentTarget.style.color="var(--color-text-primary)");},onMouseLeave:s=>{i||(s.currentTarget.style.background="hsl(var(--heroui-content3) / 0.4)",s.currentTarget.style.color="var(--color-text-secondary)");},children:n.label},n.value??"__all")})})}var _i={start_time:{sort_by:"created_at"},volume:{sort_by:"volume"},liquidity:{sort_by:"liquidity"},ending_soon:{sort_by:"end_at"}},Ma={start_time:"predict.sort.startTime",volume:"predict.sort.volume",liquidity:"predict.sort.liquidity",ending_soon:"predict.sort.endingSoon"},mp=["start_time","volume","liquidity","ending_soon"],wa={display:"inline-flex",alignItems:"center",gap:8,borderRadius:10,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content3) / 0.6)",padding:"8px 12px",fontSize:14,color:"var(--color-text-primary)",cursor:"pointer",transition:"all 0.15s"},fp={position:"absolute",left:0,top:"100%",zIndex:20,marginTop:8,borderRadius:14,border:"1px solid var(--color-border-control)",background:"var(--color-surface-interactive)",boxShadow:"0 25px 50px -12px rgba(0,0,0,0.5)",overflow:"hidden"};function Ii({sortPreset:e,onSortChange:t,sortAsc:r,onSortAscChange:o,onFilterPress:n,filterCount:i=0,className:s}){let{t:a}=useTranslation(),[l,p]=useState(false),d=useRef(null),c=useCallback(u=>{d.current&&!d.current.contains(u.target)&&p(false);},[]);useEffect(()=>(document.addEventListener("mousedown",c),()=>document.removeEventListener("mousedown",c)),[c]),useEffect(()=>{if(!l)return;let u=f=>{f.key==="Escape"&&p(false);};return document.addEventListener("keydown",u),()=>document.removeEventListener("keydown",u)},[l]);let m=Ea[e];return jsxs("div",{className:s,style:{display:"flex",alignItems:"center",gap:8},children:[jsxs("div",{ref:d,style:{position:"relative"},children:[jsxs("button",{type:"button",style:wa,onMouseEnter:u=>{u.currentTarget.style.background="var(--color-surface-strong)";},onMouseLeave:u=>{u.currentTarget.style.background="hsl(var(--heroui-content3) / 0.6)";},onClick:()=>p(u=>!u),children:[jsx(gp,{}),jsx(m,{className:"size-4 shrink-0",style:{color:"var(--color-text-secondary)"}}),jsx("span",{className:"hidden sm:block",style:{color:"var(--color-text-primary)"},children:a(Ma[e])}),jsx(vp,{open:l})]}),l&&jsx("div",{style:{...fp,width:224,padding:4},children:mp.map(u=>{let f=Ea[u],g=e===u;return jsxs("button",{type:"button",style:{display:"flex",width:"100%",alignItems:"center",gap:12,padding:"10px 12px",textAlign:"left",fontSize:14,border:"none",cursor:"pointer",transition:"all 0.15s",background:g?"color-mix(in srgb, var(--color-action-primary) 8%, transparent)":"transparent",color:g?"var(--color-action-primary)":"var(--color-text-secondary)",borderRadius:10},onMouseEnter:b=>{g||(b.currentTarget.style.background="hsl(var(--heroui-content3) / 0.5)",b.currentTarget.style.color="var(--color-text-primary)");},onMouseLeave:b=>{g||(b.currentTarget.style.background="transparent",b.currentTarget.style.color="var(--color-text-secondary)");},onClick:()=>{e===u?o(!r):t(u),p(false);},children:[jsx(f,{className:"size-4 shrink-0",style:{color:g?"var(--color-action-primary)":"var(--color-text-muted)"}}),jsx("span",{style:{flex:1,fontWeight:500},children:a(Ma[u])}),g&&jsx("svg",{viewBox:"0 0 24 24",style:{width:16,height:16,color:"var(--color-action-primary)",flexShrink:0},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsx("path",{d:"M20 6 9 17l-5-5"})})]},u)})})]}),jsx("button",{type:"button",style:{borderRadius:10,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content3) / 0.6)",width:36,height:36,color:"var(--color-text-secondary)",cursor:"pointer",transition:"all 0.15s",display:"inline-flex",alignItems:"center",justifyContent:"center",fontSize:14},onMouseEnter:u=>{u.currentTarget.style.background="var(--color-surface-strong)",u.currentTarget.style.color="var(--color-text-primary)";},onMouseLeave:u=>{u.currentTarget.style.background="hsl(var(--heroui-content3) / 0.6)",u.currentTarget.style.color="var(--color-text-secondary)";},onClick:()=>o(!r),children:r?"\u2191":"\u2193"}),jsxs("div",{style:{position:"relative",display:"inline-flex"},children:[jsxs("button",{type:"button",style:wa,onMouseEnter:u=>{u.currentTarget.style.background="var(--color-surface-strong)";},onMouseLeave:u=>{u.currentTarget.style.background="hsl(var(--heroui-content3) / 0.6)";},onClick:n,children:[jsx(hp,{}),jsx("span",{className:"hidden sm:block",style:{color:"var(--color-text-primary)"},children:a("predict.filter.title")})]}),i>0&&jsx("span",{style:{position:"absolute",top:-4,right:-4,minWidth:16,height:16,display:"flex",alignItems:"center",justifyContent:"center",borderRadius:8,background:"var(--color-action-primary)",color:"var(--color-text-inverse)",fontSize:10,fontWeight:600,padding:"0 4px"},children:i})]})]})}var Ea={start_time:CalendarIcon,volume:ChartLineIcon,liquidity:DropletIcon,ending_soon:TimerIcon};function gp(){return jsxs("svg",{viewBox:"0 0 24 24",style:{width:14,height:14,color:"var(--color-text-secondary)"},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[jsx("path",{d:"m21 16-4 4-4-4"}),jsx("path",{d:"M17 20V4"}),jsx("path",{d:"m3 8 4-4 4 4"}),jsx("path",{d:"M7 4v16"})]})}function hp(){return jsx("svg",{viewBox:"0 0 24 24",style:{width:14,height:14,color:"var(--color-text-secondary)"},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsx("path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z"})})}function vp({open:e}){return jsx("svg",{viewBox:"0 0 24 24",style:{width:14,height:14,color:"var(--color-text-muted)",transition:"transform 0.15s",transform:e?"rotate(180deg)":void 0},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsx("path",{d:"m6 9 6 6 6-6"})})}function Di(e={}){let{i18n:t}=useTranslation(),{tagSlugSelection:r,limit:o,status:n,sort_by:i,sort_asc:s,source:a,with_markets:l,minVolume:p,minLiquidity:d,timeRemaining:c,markets_limit:m,lang:u}=e,f=u??t.resolvedLanguage??t.language,g=useMemo(()=>resolveEventsParams({tagSlugSelection:r,limit:o,status:n,sort_by:i,sort_asc:s,source:a,with_markets:l,minVolume:p,minLiquidity:d,timeRemaining:c,markets_limit:m,lang:f}),[f,o,m,d,p,s,i,a,n,r,c,l]),{data:b,isLoading:h,isFetching:S,isFetchingNextPage:x,isError:y,error:v,hasNextPage:k,fetchNextPage:P,refetch:M}=useInfiniteEvents(g),N=useMemo(()=>b?.pages.flatMap(A=>A.items).filter(A=>A!=null)??[],[b]),w=useCallback(()=>{P();},[P]),R=useCallback(()=>{M();},[M]);return {data:N,isLoading:h,isFetching:S&&!x,isFetchingMore:x,isError:y,error:v??null,hasMore:k??false,fetchMore:w,refetch:R}}var Ra=`
1
+ import {createContext,memo,useRef,forwardRef,useState,useImperativeHandle,useMemo,useEffect,useCallback,useContext,createElement,Fragment as Fragment$1,useSyncExternalStore,useLayoutEffect,startTransition,Component}from'react';import {themeSemanticColors,PolymarketIcon,KalshiIcon,cn as cn$1,Skeleton,toast,StyledModal,THEMED_MODAL_BASE_CLASS,ModalContent,useDisclosure,Tabs,Tab,StyledInput,StyledSwitch,Select,SelectItem,StyledNumberInput,ChevronDownIcon,Button,Spinner,useScreen,TimerIcon,DropletIcon,ChartLineIcon,CalendarIcon,Linkable,Avatar,ChevronUpIcon,OrderbookTableIcon,OrderbookDepthIcon,RefreshIcon,Dropdown,DropdownTrigger,DropdownMenu,DropdownItem,ChevronRightIcon,ChevronLeftIcon,EmptyIcon,TrashIcon,Chip,XCloseIcon,Kbd,SearchIcon,ModalHeader,ModalBody}from'@liberfi.io/ui';import {AsyncModal,useAsyncModal}from'@liberfi.io/ui-scaffold';import {useTranslation,Translation}from'@liberfi.io/i18n';import {jsx,jsxs,Fragment}from'react/jsx-runtime';import {useWallets,useAuth,useAuthCallback}from'@liberfi.io/wallet-connector';import {useInfiniteMatchMarkets,useBalance,useDFlowKYC,usePolymarketSetup,usePredictClient,PolymarketContext,useTradeResultConfirmation,useTickSize,normalizePolymarketTickSize,useFeeRate,useRebateConfig,useRealtimeOrderbook,pickBestAsk,walkOrderbook,usePositionsMulti,useDFlowQuote,useDFlowSubmit,useOrder,buildSignedV2OrderPayload,buildCtfExchangeDomain,buildOrderMessage,CTF_ORDER_TYPES,buildSignedOrder,buildClobPayload,buildPolymarketL2Headers,resolveEventsParams,useInfiniteEvents,useRedeemPosition,pickBestBid,useAvailableShares,getPolymarketSharesPrecision,useInfiniteOrders,useCancelOrder,useInfiniteTrades,useMarketHistory,useSimilarEvents,useEvent,candlesticksQueryKey,useInfiniteComments,useInfinitePredictSearch,usePositions,usePositionValueMulti,usePredictWsClient,orderbookQueryKey}from'@liberfi.io/react-predict';export{PredictClient,PredictContext,PredictProvider,PredictWsClient,createPredictClient,createPredictWsClient,eventStatsQueryKey,fetchMatchMarketsPage,fetchMatchesPage,fetchPredictSearch,matchMarketsQueryKey,matchQueryKey,matchesQueryKey,predictSearchQueryKey,useBalance,useCancelOrder,useCandlesticks,useDFlowKYC,useDFlowQuote,useDFlowSubmit,useEvent,useEventStats,useEvents,useInfiniteEvents,useInfiniteMatchMarkets,useInfiniteMatches,useInfiniteOrders,useInfinitePredictSearch,useInfiniteTrades,useMarket,useMarketHistory,useMarketTrades,useMatch,useOrder,useOrderbook,useOrders,usePositionValue,usePositionValueMulti,usePositions,usePredictClient,usePredictSearch,usePriceHistory,useRedeemPosition,useSearchEvents,useSimilarEvents,useTrades}from'@liberfi.io/react-predict';import {ChainNamespace,Chain}from'@liberfi.io/types';import {formatAmountInUsd,SOLANA_TOKENS,formatAmount}from'@liberfi.io/utils';import yi from'canvas-confetti';import {keepPreviousData,useQueryClient,useQueries}from'@tanstack/react-query';import {List,useDynamicRowHeight}from'react-window';import {useInfiniteLoader}from'react-window-infinite-loader';import {useScrollCollapse,useResizeObserver,useCallbackRef}from'@liberfi.io/hooks';import {ResponsiveContainer,LineChart,CartesianGrid,XAxis,YAxis,Tooltip,Line,ReferenceDot}from'recharts';import {createBrowserSearchHistoryStorage,createMemorySearchHistoryStorage,useSearchKeyboardNavigation,useSearchController}from'@liberfi.io/ui/search';var bd={Weather:["Daily temperature","Snow and rain","Climate change","Natural disasters","Hurricanes"],Companies:["IPOs","Product launches","KPIs","Elon Musk","CEOs","Layoffs"],Crypto:["BTC","15 min","Hourly","ETH","SOL","DOGE","Pre-Market","XRP","BNB","HYPE"],Economics:["Growth","Fed","Inflation","Oil and energy","Employment","Housing","Jobs & Economy","Bankruptcy & Defaults","GDP","Global Central Banks"],Elections:["Primaries","International elections"],Entertainment:["Music","Movies","Music charts","Television","Awards","Video games","Oscars","Rotten Tomatoes"],Financials:["S&P","Nasdaq","Daily","Metals","Treasuries","Oil","EUR/USD","USD/JPY","WTI"],Mentions:["Politicians","Earnings","Entertainment"],Politics:["Trump","Congress","International","SCOTUS & courts","Local","Recurring","Iran","House"],Science:["AI","Energy","Space"],Social:null,Sports:["Soccer","Basketball","Baseball","Football","Hockey","Golf","Tennis","Motorsport","Esports","Boxing","MMA","Rugby","Lacrosse","Mentions","Chess","Cricket","Aussie Rules","Darts"],World:null},ta=["Politics","Sports","Crypto","Economics","Financials","Elections","Entertainment","Companies","Science and Technology","Climate and Weather","Mentions","Social","World"],an=(()=>{let e=t=>{let r=ta.indexOf(t);return r===-1?ta.length:r};return Object.entries(bd).map(([t,r])=>({slug:t,label:t,tags:(r??[]).map(o=>({slug:o,label:o}))})).sort((t,r)=>e(t.slug)-e(r.slug))})();function mi({categories:e,selectedCategory:t,selectedTag:r,activeTags:o,onCategorySelect:n,onTagSelect:i,trailing:s,pulsingTab:a="Trending",className:l}){let{t:p}=useTranslation(),d=useCallback(()=>{n(null);},[n]),c=p("predict.categories.trending");return jsxs("div",{className:cn$1("sticky top-0 z-30 flex w-full flex-col justify-between gap-2 px-4 py-2.5 lg:px-4 lg:py-2",l),children:[jsx("style",{children:".cat-primary-row{display:flex;width:100%;flex-direction:column;gap:8px}@media(min-width:1024px){.cat-primary-row{flex-direction:row;align-items:center}}.cat-primary-row>.cat-tabs{min-width:0;overflow-x:auto;overflow-y:hidden;-ms-overflow-style:none;scrollbar-width:none}.cat-primary-row>.cat-tabs::-webkit-scrollbar{display:none}@media(min-width:1024px){.cat-primary-row>.cat-tabs{flex:1 1 0%}}"}),jsxs("div",{className:"cat-primary-row",children:[jsx("div",{className:"cat-tabs hideScrollbar",children:jsxs("div",{className:"flex min-h-9 items-stretch gap-x-3 lg:min-h-10",children:[jsx(ra,{label:c,isSelected:t===null,onPress:d,showPulse:c===a}),jsx(Pd,{}),e.map(m=>{let u=m.slug??m.category,f=m.label??m.category;return jsx(ra,{label:f,isSelected:t===u,onPress:()=>n(u),badge:m.badge,showPulse:u===a||f===a},u)})]})}),s&&jsx("div",{className:"flex-shrink-0",children:s})]}),t&&o.length>0&&jsx("div",{className:"hideScrollbar overflow-x-auto overflow-y-hidden flex items-center",children:jsxs("div",{className:"flex gap-x-1.5 pl-1 lg:w-full lg:gap-x-2",children:[jsx(oa,{label:p("predict.categories.allMarkets"),isSelected:r===null,onPress:()=>i(null)}),o.map(m=>{let u=m.slug??m.label;return jsx(oa,{label:m.label,icon:m.icon,isSelected:r===u,onPress:()=>i(u)},u)})]})})]})}function ra({label:e,isSelected:t,onPress:r,badge:o,showPulse:n}){return jsxs("button",{type:"button",onClick:r,className:cn$1("relative shrink-0 cursor-pointer whitespace-nowrap border-b px-2.5 py-1.5 text-sm font-medium capitalize transition-colors",t?"border-primary/50 text-primary":"border-transparent text-text-muted hover:text-text-secondary"),children:[n?jsxs("span",{className:"flex items-center gap-x-1.5",children:[jsx("span",{className:"h-2 w-2 animate-pulse rounded-full bg-[rgb(240,68,56)]"}),jsx("span",{children:e})]}):e,o&&jsx("span",{className:"absolute -right-1 top-0 rounded bg-primary px-0.5 py-px text-[0.625rem] font-semibold leading-none text-text-inverse",children:o})]})}function Pd(){return jsx("span",{className:"flex items-center text-text-muted","aria-hidden":"true",children:"|"})}function oa({label:e,icon:t,isSelected:r,onPress:o}){return jsxs("button",{type:"button",onClick:o,className:cn$1("flex shrink-0 items-center justify-center gap-x-1 min-w-14 rounded-2xl border px-3 py-1.5 text-sm font-medium uppercase transition-colors cursor-pointer",r?"border-primary/40 bg-primary/15 text-primary":"border-border/80 text-text-muted hover:bg-primary/10 hover:text-primary"),children:[t&&jsx("span",{className:cn$1("iconify size-4",t)}),e]})}function Nd({count:e=6}){return jsx("div",{className:"flex w-full flex-col gap-2 px-4 py-2.5 lg:px-4 lg:py-2",children:jsx("div",{className:"flex min-h-9 items-center gap-x-3 lg:min-h-10",children:Array.from({length:e}).map((t,r)=>jsx(Skeleton,{className:"h-6 w-16 shrink-0 rounded"},r))})})}function ia(e){return e.trim().toLowerCase().replace(/&/g,"and").replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"")}function wd(e){return `predict.categories.category.${ia(e)}`}function sa(e){return `predict.categories.tag.${ia(e)}`}function Ed(e,t){return e.map(r=>({category:r.slug,slug:r.slug,label:t(wd(r.slug),r.label),tags:r.tags.map(o=>({slug:o.slug,label:t(sa(o.slug),o.label),icon:o.icon}))}))}function Cd(e,t){return e?e.tags.map(r=>({slug:r.slug,label:t(sa(r.slug),r.label),icon:r.icon})):[]}function gi({onSelect:e,trailing:t,className:r}){let{t:o}=useTranslation(),n=useCallback((f,g)=>{let h=o(f);return typeof h=="string"&&h!==f?h:g},[o]),[i,s]=useState(null),[a,l]=useState(null),p=useCallback(f=>{s(f),l(null),e?.({categorySlug:f,tagSlug:null});},[e]),d=useCallback(f=>{l(f),e?.({categorySlug:i,tagSlug:f});},[i,e]),c=Ed(an,n),m=an.find(f=>f.slug===i),u=Cd(m,n);return jsx(mi,{categories:c,selectedCategory:i,selectedTag:a,activeTags:u,onCategorySelect:p,onTagSelect:d,trailing:t,className:r})}function cn(e,t){return e?.trim()||t}function Kr(e){return cn(e.title_trans,e.title)??e.title}function hi(e){return cn(e.question_trans,e.question)??e.question}function vi(e){return cn(e.description_trans,e.description)}function dn(e){return cn(e.label_trans,e.label)??e.label}function lr(e){let t=e.outcomes?.[0];return t?dn(t):hi(e)}function un(e){return {title:Kr(e),imageUrl:e.image_url}}function pn(e,t){let r=e.outcomes[0],o=e.outcomes[1];return {question:hi(e),yesAsk:t?.yesAsk??r?.best_ask??r?.price,noAsk:t?.noAsk??o?.best_ask??o?.price,yesBid:t?.yesBid??r?.best_bid,noBid:t?.noBid??o?.best_bid,yesSubTitle:r?dn(r):lr(e),noSubTitle:o?dn(o):"No"}}var jr=24,mn=4,Vr={ONE_MINUTE:1,ONE_HOUR:60,ONE_DAY:1440},$={ONE_HOUR:"1h",SIX_HOURS:"6h",ONE_DAY:"1d",ONE_MONTH:"1m",ALL:"all"},yo=$.ALL,Rd={[$.ONE_HOUR]:Vr.ONE_MINUTE,[$.SIX_HOURS]:Vr.ONE_MINUTE,[$.ONE_DAY]:Vr.ONE_MINUTE,[$.ONE_MONTH]:Vr.ONE_MINUTE,[$.ALL]:Vr.ONE_MINUTE},Ld={[$.ONE_HOUR]:60,[$.SIX_HOURS]:60,[$.ONE_DAY]:300,[$.ONE_MONTH]:900,[$.ALL]:900},xi={[$.ONE_HOUR]:3600,[$.SIX_HOURS]:360*60,[$.ONE_DAY]:1440*60,[$.ONE_MONTH]:720*60*60,[$.ALL]:null},Od={[$.ONE_HOUR]:1,[$.SIX_HOURS]:1,[$.ONE_DAY]:5,[$.ONE_MONTH]:15,[$.ALL]:15},ko=1,So=1,_d=1,Id=1,Dd=99,Pr={ONE_HOUR:"1h",SIX_HOURS:"6h",ONE_DAY:"1d",ONE_WEEK:"1w",MAX:"max"},Ad=Pr.ONE_WEEK,Fd={[Pr.ONE_HOUR]:60,[Pr.SIX_HOURS]:60,[Pr.ONE_DAY]:300,[Pr.ONE_WEEK]:1800,[Pr.MAX]:1800};var ca=createContext(null);function cr(){let e=useContext(ca);if(!e)throw new Error("usePredictWallet must be used within a PredictWalletProvider");return e}var $d=1e4;function da({pollingInterval:e=$d,enabled:t=true,enableKalshi:r=true,children:o}){let n=useWallets(),i=useMemo(()=>n.find(w=>w.chainNamespace===ChainNamespace.SOLANA&&w.isConnected)?.address,[n]),s=useMemo(()=>n.find(w=>w.chainNamespace===ChainNamespace.EVM&&w.isConnected)?.address,[n]),{data:a,isLoading:l,isFetching:p,error:d}=useBalance({source:"kalshi",user:i??""},{enabled:t&&r&&!!i,refetchInterval:e}),{data:c,isLoading:m}=useDFlowKYC(i,{enabled:t&&r&&!!i,refetchInterval:3e4}),{data:u,isLoading:f}=usePolymarketSetup(s,{enabled:t&&!!s,refetchInterval:3e4}),g=u?.safe_address,b=u?.verified??false,h=u?.wallet_kind??"deposit",S=u?.deposit_wallet_address,x=h==="safe"?u?.safe_address:S,y=h==="safe"?u?.safe_deployed??false:u?.deposit_wallet_deployed??false,{data:v,isLoading:k,isFetching:P,error:M}=useBalance({source:"polymarket",user:s??""},{enabled:t&&b&&!!s,refetchInterval:e}),N=useMemo(()=>({enableKalshi:r,solanaAddress:i,evmAddress:s,polymarketWalletKind:h,polymarketWalletAddress:x,polymarketDepositWalletAddress:S,polymarketWalletDeployed:y,polymarketSafeAddress:g,kalshiUsdcBalance:a?Number(a.balance):null,polymarketUsdcBalance:b&&v?Number(v.balance):null,kalshiKycVerified:c?.verified??false,kalshiKycUrl:c?.kyc_url??null,kalshiKycLoading:m,polymarketSetupVerified:b,polymarketSafeDeployed:u?.safe_deployed??false,polymarketTokenApproved:u?.token_approved??false,polymarketSetupLoading:f,isLoading:l||k,isFetching:p||P,error:d??M??null}),[r,i,s,h,x,S,y,g,a,v,b,c,m,u,f,l,k,p,P,d,M]);return jsx(ca.Provider,{value:N,children:o})}var Vd={minutes:60,hours:3600,days:86400};function Po(e,t,r){let o=Math.floor(Date.now()/1e3);switch(e){case "5m":return o+300;case "1h":return o+3600;case "12h":return o+720*60;case "24h":return o+1440*60;case "eod":{let n=new Date;return n.setUTCHours(23,59,59,0),Math.floor(n.getTime()/1e3)}case "custom":return o+t*Vd[r]}}function No(e,t){let r=parseFloat(t);return !r||r<=0?e:Math.round(e/r)*r}function be(e,t){let r=Math.pow(10,t);return Math.floor(e*r)/r}function ua(e){let t=e;return !Number.isFinite(t)||t<=0||t>=1?1:1-t}var pa=100,ma=300;function ki(e,t){return pa/1e4+Math.max(0,e)/1e4*ua(t)}function jd(e,t){let r=e?.[t],o=typeof r=="number"?r:Number(r);return Number.isFinite(o)?o:void 0}function Gd(e,t){let r=e?.[t];return typeof r=="string"?r:void 0}function Si(e){let t=jd(e,"polymarket.effectiveTakerFeeBps");if(t!==void 0&&t>=0)return t;let r=e?.["polymarket.feeDescriptor"],o=typeof r?.r=="number"?r.r:Number(r?.r);return Number.isFinite(o)&&o>=0?o*1e4:Gd(e,"polymarket.sportsMarketType")?ma:0}function Pi({source:e,usdcBalance:t,safetyBufferUsd:r=.01,feeRateBps:o=0,pricePerShare:n}){if(t==null||!Number.isFinite(t))return 0;let i=be(Math.max(0,t),2);if(e!=="polymarket")return i;let s=ki(o,n??NaN),a=i/(1+s)-r;return be(Math.max(0,a),2)}function Ni({usdcAmount:e,pricePerShare:t,feeRateBps:r}){if(!Number.isFinite(e)||e<=0)return 0;let o=ki(r,t);return e*o}function Mi({grossReturn:e,pricePerShare:t,feeRateBps:r}){if(!Number.isFinite(e)||e<=0)return 0;let o=ki(r,t);return e*o}function Mo(e,t,r){let o=e.match(/Size\s*\(([\d.]+)\)\s*lower than the minimum:\s*([\d.]+)/i);if(o)return t("predict.trade.polymarket.minOrderSize",{current:o[1],min:o[2]});let n=e.match(/balance:\s*(\d+),\s*sum of active orders:\s*(\d+)/i);if(n){let s=parseInt(n[1],10)/1e6,a=parseInt(n[2],10)/1e6,l=Math.max(0,s-a);return t("predict.trade.polymarket.insufficientBalance",{total:be(s,2).toFixed(2),active:be(a,2).toFixed(2),available:be(l,2).toFixed(2)})}return /not enough balance/i.test(e)?t(r==="sell"?"predict.trade.insufficientShares":"predict.trade.insufficientBalance"):/max accuracy of/i.test(e)?t("predict.trade.polymarket.decimalAccuracy"):/tick size/i.test(e)?t("predict.trade.polymarket.tickSizeError"):/couldn.*fully filled|FOK.*filled or killed/i.test(e)?t("predict.trade.polymarket.fokNotFilled"):e.replace(/order\s+0x[a-f0-9]+\s+is invalid\.\s*/i,"")||e}function Nr(e,t=2){return parseFloat(be(e,t).toFixed(t)).toString()}function wi(){let e={startVelocity:30,spread:360,ticks:60,zIndex:9999};yi({...e,particleCount:80,origin:{x:.5,y:.4}}),setTimeout(()=>{yi({...e,particleCount:40,origin:{x:.3,y:.6}});},150),setTimeout(()=>{yi({...e,particleCount:40,origin:{x:.7,y:.6}});},300);}function Gr(e,t){return {submitted:e("predict.trade.resultSubmitted"),completed:e("predict.trade.resultCompleted"),delayed:e("predict.trade.resultDelayed")}}function Xd({deadlineAt:e}){let[t,r]=useState(()=>Math.max(0,e-Date.now()));return useEffect(()=>{let o=setInterval(()=>{r(Math.max(0,e-Date.now()));},1e3);return ()=>clearInterval(o)},[e]),`${Math.max(0,Math.ceil(t/1e3))}s`}function Mr({id:e=`predict-trade-result-${Date.now()}`,durationMs:t=3e4,celebrateOnCompleted:r=false,messages:o}){return {id:e,submitted:()=>{let n=Date.now()+t;toast.progress({id:e,message:o.submitted,duration:t,progress:true,action:createElement(Xd,{deadlineAt:n})});},completed:()=>{toast.update(e,{type:"success",message:o.completed,duration:5e3}),r&&wi();},delayed:()=>{toast.update(e,{type:"blank",message:o.delayed,duration:8e3});},failed:n=>{toast.update(e,{type:"error",message:n,duration:8e3});}}}function Ci({market:e,initialOutcome:t="yes",slippageBps:r=100,onInsufficientBalance:o}){let{t:n,i18n:i}=useTranslation(),{status:s}=useAuth(),a=useWallets(),l=usePredictClient(),p=useContext(PolymarketContext),{start:d}=useTradeResultConfirmation(),c=e.source,m=c==="polymarket",u=a.find(D=>D.chainNamespace===ChainNamespace.SOLANA&&D.isConnected),f=a.find(D=>D.chainNamespace===ChainNamespace.EVM&&D.isConnected&&"switchChain"in D),g=s==="authenticated",b=u?.address,h=f?.address,[S,x]=useState(t),[y,v]=useState("market"),[k,P]=useState(NaN),[M,N]=useState(NaN),[w,R]=useState(false),[A,X]=useState(null),[L,G]=useState(false),[U,oe]=useState(false),[W,te]=useState("1h"),[ne,se]=useState(30),[he,Pe]=useState("minutes"),pt=useMemo(()=>Gr(n),[i,n]),Ve=true,Be=useCallback(async(D,De)=>{let Te=Mr({celebrateOnCompleted:true,messages:pt});Te.submitted(),await d({source:c,user:c==="kalshi"?b:h,kalshiUser:Ve?b:void 0,polymarketUser:h,marketSlug:e.slug,eventSlug:e.event_slug,expectation:D,getOrdersHeaders:De})==="confirmed"?Te.completed():Te.delayed();},[d,Ve,h,e.event_slug,e.slug,c,pt,b]),E=useMemo(()=>{if(c!=="polymarket")return;let D=e.provider_meta?.["polymarket.clobTokenIds"];return D?(typeof D=="string"?JSON.parse(D):D)[S==="yes"?0:1]:void 0},[c,e.provider_meta,S]),{data:st,isLoading:He}=useTickSize(E),ve=normalizePolymarketTickSize(st?.minimum_tick_size),{data:at,isLoading:we}=useFeeRate(E),Ue=at?.base_fee??0,qe=String(Ue),C=useMemo(()=>Si(e.provider_meta),[e.provider_meta]),{data:O}=useRebateConfig(),z=O?.builder_enabled&&O.builder_code?O.builder_code:void 0,Z=null,me=false,Ne=null,lt=false,ct,kt,Qe;try{let D=cr();Ve=D.enableKalshi,Z={kalshiUsdcBalance:D.kalshiUsdcBalance,polymarketUsdcBalance:D.polymarketUsdcBalance,isLoading:D.isLoading},me=D.kalshiKycVerified,Ne=D.kalshiKycUrl,lt=D.polymarketSetupVerified,ct=D.polymarketSafeAddress,kt=D.polymarketWalletKind,Qe=D.polymarketWalletAddress;}catch{}let Yt=c==="kalshi"&&!me,We=c==="polymarket"&&!lt,{data:et}=useRealtimeOrderbook({slug:e.slug,source:c,outcome:S},{enabled:e.status==="open"}),xe=useMemo(()=>{let D=pickBestAsk(et,S);if(D!=null&&D>0)return D;let De=S==="yes"?0:1,Te=e.outcomes[De];return Te?.best_ask??Te?.price??.5},[et,e.outcomes,S]),mt=useCallback(D=>{v(D);},[]),St=useCallback(D=>{x(D),N(NaN);},[]);useEffect(()=>{St(t);},[t,St]),useEffect(()=>{y==="limit"&&isNaN(M)&&N(Math.round(xe*1e4)/1e4);},[y,M,xe]);let Me=useMemo(()=>y==="limit"&&m&&!isNaN(M)?M:xe,[y,m,M,xe]),tt=useMemo(()=>isNaN(k)||k<=0?0:Me>0?k/Me:0,[k,Me]),Ce=useMemo(()=>walkOrderbook({orderbook:et,outcome:S,side:"buy",sharesNeeded:tt,slippageBps:r}),[et,S,tt,r]),Lt=useMemo(()=>Ce.status==="ok"&&Ce.worstPrice!=null&&Ce.worstPrice>0?Ce.worstPrice:xe,[Ce,xe]),I=useMemo(()=>isNaN(k)||k<=0?"0":String(Math.round(k*1e6)),[k]),_e=e.provider_meta?.["dflow.yesMint"]??"",Xe=e.provider_meta?.["dflow.noMint"]??"",fo=SOLANA_TOKENS.stablecoins.USDC.address,B=S==="yes"?_e:Xe,Ie=fo,Pt=B,Ft=c==="kalshi"?b??"":h??"",{data:go,isLoading:ni}=usePositionsMulti({kalshi_user:c==="kalshi"?Ft:void 0,polymarket_user:c==="polymarket"?Ft:void 0},{enabled:!!Ft}),ii=c==="kalshi"&&!!Ie&&!!Pt&&!!b&&I!=="0",{refetch:qt}=useDFlowQuote({inputMint:Ie,outputMint:Pt,amount:I,userPublicKey:b??"",slippageBps:100},{enabled:ii}),Ir=useMemo(()=>Z?c==="kalshi"?Z.kalshiUsdcBalance:Z.polymarketUsdcBalance:go&&go.positions.reduce((De,Te)=>Te.side==="USDC"||Te.side==="collateral"?De+(Te.current_value??0):De,0)||null,[Z,go,c]),si=Z?Z.isLoading:ni,ft=useMemo(()=>Pi({source:c,usdcBalance:Ir,feeRateBps:C,pricePerShare:Me}),[c,Ir,C,Me]),Ot=Ir==null?null:ft,Dr=useMemo(()=>isNaN(k)||k<=0?0:k,[k]),ho=useMemo(()=>isNaN(k)||k<=0?0:Me>0?k/Me*1:0,[k,Me]),Ar=useMemo(()=>c!=="polymarket"||isNaN(k)||k<=0?0:Ni({usdcAmount:k,pricePerShare:Me,feeRateBps:C}),[c,k,Me,C]),sr=ho-Dr-Ar,ai=useCallback(D=>{if(isNaN(D)){P(NaN);return}P(Math.round(Math.max(0,D)*100)/100);},[]),en=useCallback(D=>{if(isNaN(D)){N(NaN);return}N(Math.round(D*1e4)/1e4);},[]),Fr=useCallback(()=>{P(NaN),N(NaN),v("market"),oe(false),te("1h"),se(30),Pe("minutes");},[]),Qt=useMemo(()=>{let D=[];return isNaN(k)||k<=0?D.push(n("predict.trade.minAmountUsd",{amount:So})):k<So&&D.push(n("predict.trade.minAmountUsd",{amount:So})),e.status!=="open"&&D.push(n("predict.trade.marketNotActive")),Ot!=null&&!isNaN(k)&&k>0&&k>Ot&&D.push(n("predict.trade.insufficientBalance")),y==="limit"&&m&&(isNaN(M)||M<.01||M>.99)&&D.push(n("predict.trade.limitPriceRange")),y==="limit"&&m&&U&&W==="custom"&&(isNaN(ne)||ne<=0)&&D.push(n("predict.trade.expiration.invalidDate")),c==="polymarket"&&y==="market"&&!isNaN(k)&&k>0&&tt>0&&(Ce.status==="insufficient_liquidity"?D.push(n("predict.trade.insufficientLiquidity",{available:be(Ce.totalAvailable,2)})):Ce.status==="exceeds_slippage"&&D.push(n("predict.trade.priceImpactTooHigh",{impact:(Ce.priceImpactBps/100).toFixed(2),slippage:(r/100).toFixed(2)}))),{isValid:D.length===0,errors:D}},[k,e.status,Ot,y,m,M,U,W,ne,c,tt,Ce,r,n]),vr=useMemo(()=>Ot==null||isNaN(k)||k<=0?false:k>Ot,[Ot,k]),xr=useCallback(()=>{o?.(c);},[o,c]),{mutateAsync:br}=useDFlowSubmit(),{data:vo}=useOrder({id:A??"",source:c},{enabled:!!A});useEffect(()=>{if(!vo||!A)return;let{status:D}=vo;D==="closed"?(X(null),R(false),Be("buy-market"),Fr()):(D==="failed"||D==="expired")&&(R(false),X(null),toast.error(n("predict.trade.submitError")));},[Be,vo,A,Fr,n]);let xo=useCallback(async()=>{if(!b||!u)return;if(!Ie||!Pt){toast.error("Missing token mint addresses"),R(false);return}if(!me){G(true),R(false);return}let It=(await qt()).data?.transaction;if(!It){toast.error(n("predict.trade.submitError")),R(false);return}let bo=Uint8Array.from(atob(It),gt=>gt.charCodeAt(0)),Xt=await u.signTransaction(bo),Jt=await br({signedTransaction:btoa(String.fromCharCode(...Xt)),orderContext:{user_public_key:b,input_mint:Ie,output_mint:Pt,amount:I,price:String(xe),side:"BUY",outcome:S==="yes"?"YES":"NO",market_slug:e.slug,slippage_bps:100}});X(Jt.signature);},[b,u,qt,br,Ie,Pt,I,xe,S,e.slug,n,me]),Br=useCallback(async()=>{if(!f||!p)return;let D=f.chain,De=D!==Chain.POLYGON;De&&await f.switchChain(Chain.POLYGON);try{let Te=await f.getEip1193Provider();if(!Te){toast.error(n("predict.trade.submitError")),R(!1);return}let It=kt==="deposit"&&!!Qe,bo=!It&&!!ct,Xt=It?Qe:ct,Jt={address:f.address,signatureType:It?3:bo?2:0,signTypedData:async(Dt,T,Re,Le)=>{let ze=[];"name"in Dt&&ze.push({name:"name",type:"string"}),"version"in Dt&&ze.push({name:"version",type:"string"}),"chainId"in Dt&&ze.push({name:"chainId",type:"uint256"}),"verifyingContract"in Dt&&ze.push({name:"verifyingContract",type:"address"}),"salt"in Dt&&ze.push({name:"salt",type:"bytes32"});let vt={EIP712Domain:ze,...T};return await Te.request({method:"eth_signTypedData_v4",params:[f.address,JSON.stringify({domain:Dt,types:vt,primaryType:Re,message:Le})]})}},gt=p.credentials??await p.authenticate(Jt),li=S==="yes"?0:1,tn="",Ut=e.provider_meta?.["polymarket.clobTokenIds"];Ut&&(tn=(typeof Ut=="string"?JSON.parse(Ut):Ut)[li]??"");let Hr=e.provider_meta?.["polymarket.negRisk"]??!1,Ur=y==="limit"&&!isNaN(M)?M:Lt,yr=No(Ur,ve),rn=y==="limit"?U?"GTD":"GTC":"FOK",kr=y==="market"?k:yr>0?k/yr:0,Wr={tokenId:tn,price:yr,size:kr,side:"BUY",orderType:rn,tickSize:ve,negRisk:Hr,...Xt&&{funderAddress:Xt},...z&&{builderCode:z},...y==="limit"&&U&&{expiration:Po(W,ne,he)}},zr;if(It)zr=await buildSignedV2OrderPayload({signer:Jt,depositWalletAddress:Xt,input:Wr,owner:gt.apiKey});else {let Dt=buildCtfExchangeDomain(Hr),T=buildOrderMessage({...Wr,signerAddress:Jt.address,signatureType:Jt.signatureType,feeRateBps:qe}),Re=await Jt.signTypedData(Dt,CTF_ORDER_TYPES,"Order",T),Le=buildSignedOrder(T,Re,Wr.orderType);zr=buildClobPayload(Le,gt.apiKey);}await l.executePolymarketOrder({payload:zr,l2_api_key:gt.apiKey,l2_secret:gt.secret,l2_passphrase:gt.passphrase,signer_address:gt.address,owner:gt.apiKey}),Be(y==="limit"?"buy-limit":"buy-market",async()=>await buildPolymarketL2Headers(gt.address,{apiKey:gt.apiKey,secret:gt.secret,passphrase:gt.passphrase,method:"GET",requestPath:"/data/orders"})),Fr(),R(!1);}finally{De&&D&&f.switchChain(D).catch(()=>{});}},[f,p,S,e.provider_meta,y,Be,M,Lt,k,l,U,W,ne,he,Fr,n,ve,qe,ct,kt,Qe,z]),_t=useCallback(async()=>{if(!(!Qt.isValid||!g)){R(true),X(null),G(false);try{c==="kalshi"?await xo():await Br();}catch(D){let De=D instanceof Error?D.message:"",Te=c==="polymarket"&&De?Mo(De,n,"buy"):De||void 0;toast.error(Te||n("predict.trade.submitError")),R(false);}}},[Qt.isValid,g,c,xo,Br,n]);return {outcome:S,orderType:y,quantity:k,limitPrice:M,shares:tt,effectivePrice:Me,estimatedCost:Dr,estimatedFee:Ar,potentialPayout:ho,potentialProfit:sr,pricePerShare:xe,usdcBalance:Ir,maxBuyAmount:ft,spendableUsdcBalance:Ot,isBalanceLoading:si,isMarketDataLoading:c==="polymarket"&&(we||He),isSubmitting:w,authStatus:s,validation:Qt,isInsufficientBalance:vr,source:c,supportsLimitOrder:m,kycRequired:L,needsKyc:Yt,needsSetup:We,kycUrl:Ne,expirationEnabled:U,expirationPreset:W,customDuration:ne,customDurationUnit:he,setOutcome:St,setOrderType:mt,setQuantity:ai,setLimitPrice:en,setExpirationEnabled:oe,setExpirationPreset:te,setCustomDuration:se,setCustomDurationUnit:Pe,submit:_t,notifyInsufficientBalance:xr}}function Eo({isOpen:e,onClose:t,kycUrl:r}){let{t:o}=useTranslation();return jsx(StyledModal,{isOpen:e,onOpenChange:n=>{n||t();},size:"md",classNames:{base:THEMED_MODAL_BASE_CLASS,body:"!p-0"},children:jsx(ModalContent,{children:jsxs("div",{children:[jsxs("div",{className:"flex items-center justify-between px-5 pt-5 pb-4",children:[jsx("h3",{className:"text-base font-semibold text-text-primary",children:o("predict.trade.kycModalTitle")}),jsx("button",{type:"button",onClick:t,className:"p-1 rounded-[10px] hover:bg-surface-strong/50 text-text-secondary hover:text-text-primary transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:jsxs("svg",{width:16,height:16,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round",children:[jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})})]}),jsxs("div",{className:"px-5 pb-5",children:[jsx("p",{className:"text-[13px] text-text-secondary mb-4 text-left",children:o("predict.trade.kycModalDescription")}),jsx("div",{className:"flex flex-col gap-2 mb-4",children:["predict.trade.kycModalBullet1","predict.trade.kycModalBullet2","predict.trade.kycModalBullet3"].map(n=>jsxs("div",{className:"flex items-center gap-2.5 text-[13px] text-text-secondary",children:[jsx("svg",{width:14,height:14,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2.5,strokeLinecap:"round",strokeLinejoin:"round",className:"text-brand-primary shrink-0",children:jsx("polyline",{points:"20 6 9 17 4 12"})}),jsx("span",{children:o(n)})]},n))}),r&&jsxs("a",{href:r,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 text-[13px] text-brand-primary/70 hover:text-brand-primary transition-colors mb-3",children:[o("predict.trade.goToKYC")," \u2192"]}),jsx("p",{className:"text-[11px] text-text-muted mb-5",children:o("predict.trade.kycModalNote")}),jsx("button",{type:"button",onClick:t,className:"w-full py-2.5 rounded-[10px] bg-action-primary text-text-inverse text-sm font-semibold hover:bg-action-primary-hover transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:o("common.ok")})]})]})})})}var Fu=["5m","1h","12h","24h","eod","custom"],Bu={"5m":"predict.trade.expiration.5m","1h":"predict.trade.expiration.1h","12h":"predict.trade.expiration.12h","24h":"predict.trade.expiration.24h",eod:"predict.trade.expiration.eod",custom:"predict.trade.expiration.custom"},Hu=["minutes","hours","days"],Uu={minutes:"predict.trade.expiration.minutes",hours:"predict.trade.expiration.hours",days:"predict.trade.expiration.days"},Wu={maximumFractionDigits:0},dr="-";function Li({event:e,market:t,variant:r="bordered",outcome:o,orderType:n,quantity:i,limitPrice:s,shares:a,effectivePrice:l,potentialProfit:p,potentialPayout:d,estimatedCost:c,estimatedFee:m=0,usdcBalance:u,isBalanceLoading:f,isMarketDataLoading:g,isSubmitting:b,authStatus:h,isValid:S,validationErrors:x,isInsufficientBalance:y,onInsufficientBalance:v,supportsLimitOrder:k,maxBuyAmount:P,kycRequired:M,needsKyc:N,needsSetup:w,kycUrl:R,expirationEnabled:A,expirationPreset:X,customDuration:L,customDurationUnit:G,oddsFormatter:U,outcomeLabels:oe,onOutcomeChange:W,onOrderTypeChange:te,onQuantityChange:ne,onLimitPriceChange:se,onExpirationEnabledChange:he,onExpirationPresetChange:Pe,onCustomDurationChange:pt,onCustomDurationUnitChange:Ve,onSubmit:Be}){let{t:E}=useTranslation(),[st,He]=useState(true),ve=useDisclosure(),[at,we]=useState(""),Ue=useRef(false);useEffect(()=>{Ue.current||we(isNaN(i)?"":String(i));},[i]);let[qe,C]=useState(""),O=useRef(false);useEffect(()=>{O.current||(isNaN(s)?C(""):C(String(parseFloat((s*100).toFixed(2)))));},[s]);let z=useCallback(B=>{if(B!==""&&!/^\d*\.?\d{0,2}$/.test(B))return;if(C(B),B===""||B==="."){se(NaN);return}let Pt=parseFloat(B);isNaN(Pt)||se(Pt/100);},[se]),Z=useCallback(B=>{if(B!==""&&!/^\d*\.?\d{0,2}$/.test(B))return;if(we(B),Xe(false),B===""||B==="."){ne(NaN);return}let Pt=parseFloat(B);isNaN(Pt)||ne(Pt);},[ne]);useEffect(()=>{M&&!ve.isOpen&&ve.onOpen();},[M,ve]);let me=useMemo(()=>{let B=o==="yes"?t.yesAsk:t.noAsk;return B!=null?parseFloat((Number(B)*100).toFixed(2)):null},[o,t]),Ne=o==="yes"?t.yesAsk:t.noAsk,lt=Ne!=null&&U?U(Number(Ne)):me!=null?`${me} \xA2`:dr,ct=Number.isFinite(l)?parseFloat((l*100).toFixed(2)):null,kt=Number.isFinite(l)&&U?U(l):ct!=null?`${ct} \xA2`:dr,Qe=!isNaN(i)&&i>0,Yt=Qe?c+m:0,We=Qe&&a>0?Yt/a:0,et=We>0&&U?U(We):We>0?`${parseFloat((We*100).toFixed(2))}\xA2`:dr,xe=h==="authenticated",mt=h==="authenticating"||h==="deauthenticating",St=xe&&(N||w),Me=useCallback(B=>oe?.[B]??E(B==="yes"?"predict.trade.yes":"predict.trade.no"),[oe,E]),tt=useMemo(()=>{if(mt)return E("predict.trade.checkingLogin");if(!xe)return E("predict.trade.loginToTrade");if(N)return E("predict.trade.kycRequired");if(w)return E("predict.trade.setupRequired");if(f)return E("predict.trade.loadingBalance");if(g)return E("predict.trade.loadingMarketData");if(b)return E("predict.trade.submitting");if(M)return E("predict.trade.kycRequired");if(!Qe)return E("predict.trade.enterAmount");let B=Me(o),Ie=p>0?` \u2192 Win $${p.toFixed(2)}`:"";return `${E("predict.trade.buy")} ${B}${Ie}`},[mt,xe,N,w,f,g,b,M,Qe,o,Me,p,E]),Ce="primary",Lt=()=>{let B=P??be(u??0,2);ne(be(B/2,2));},I=()=>{ne(P??be(u??0,2));},[_e,Xe]=useState(false),fo=()=>{if(!xe){Xe(false),Be();return}if(N){ve.onOpen();return}if(w&&v){Xe(false),v();return}if(M){ve.onOpen();return}if(y&&v){Xe(false),v();return}if(!S){Xe(true);return}Xe(false),Be();};return jsxs(Fragment,{children:[jsxs("div",{className:"flex w-full flex-col gap-y-4 p-4",style:r==="bordered"?{borderRadius:14,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content2) / 0.4)",transition:"border-color 0.2s"}:void 0,onMouseEnter:B=>{r==="bordered"&&(B.currentTarget.style.borderColor="hsl(var(--heroui-content4) / 0.8)");},onMouseLeave:B=>{r==="bordered"&&(B.currentTarget.style.borderColor="hsl(var(--heroui-content3) / 0.6)");},children:[e&&jsxs("div",{className:"flex items-center gap-x-3",children:[e.imageUrl&&jsx("img",{src:e.imageUrl,alt:e.title,className:"h-10 w-10 shrink-0 rounded-lg object-cover"}),jsxs("div",{className:"flex min-w-0 flex-col gap-y-0.5",children:[jsx("span",{className:"text-sm text-text-muted leading-tight line-clamp-1",children:e.title}),jsxs("span",{className:"text-base font-semibold leading-tight line-clamp-1",children:[jsx("span",{className:"text-foreground",children:t.yesSubTitle}),jsx("span",{className:"text-foreground",children:" \xB7 "}),jsxs("span",{className:"text-positive",children:[E("predict.trade.buy")," ",Me(o)]})]})]})]}),jsxs("div",{className:"flex items-center justify-between",children:[k?jsxs(Tabs,{variant:"underlined",selectedKey:n,onSelectionChange:B=>te(B),classNames:{tabList:"gap-x-4",tab:"px-0"},children:[jsx(Tab,{title:E("predict.trade.market")},"market"),jsx(Tab,{title:E("predict.trade.limit")},"limit")]}):jsx("span",{className:"text-sm font-medium text-foreground",children:E("predict.trade.market")}),n==="limit"&&k?jsx(StyledInput,{"aria-label":E("predict.trade.limitPrice"),placeholder:"50",size:"sm",radius:"none",inputMode:"decimal",value:qe,onChange:B=>z(B.target.value),onFocus:()=>{O.current=true;},onBlur:()=>{O.current=false,isNaN(s)?C(""):C(String(parseFloat((s*100).toFixed(2))));},endContent:jsx("span",{className:"text-xl font-bold tabular-nums text-foreground",children:"\xA2"}),classNames:{base:"w-28",inputWrapper:"bg-content2 data-[hover=true]:bg-content2 group-data-[focus=true]:bg-content2 rounded-lg px-2 h-9 min-h-9",input:"text-xl font-bold tabular-nums text-right"}}):lt!=null&&jsx("span",{className:"text-xl font-bold tabular-nums",children:lt})]}),jsx("div",{className:"flex gap-x-2",children:["yes","no"].map(B=>{let Ie=B==="yes"?t.yesAsk:t.noAsk;return jsx("div",{className:"flex flex-1 flex-col gap-y-1",children:jsxs("button",{type:"button",onClick:()=>W(B),className:`w-full rounded-lg border py-2 text-sm font-medium transition-colors cursor-pointer ${o===B?"border-positive bg-positive/10 text-positive":"border-default-400 text-foreground hover:border-default-500"}`,children:[jsx("span",{children:Me(B)}),Ie!=null&&jsx("span",{className:"ml-1 opacity-70",children:U?U(Number(Ie)):`${parseFloat((Number(Ie)*100).toFixed(2))}\xA2`})]})},B)})}),jsxs("div",{className:"flex flex-col gap-y-1.5",children:[jsxs("div",{className:"flex items-center justify-between text-xs text-text-muted",children:[jsx("span",{className:"text-sm font-medium text-foreground",children:E("predict.trade.youArePaying")}),jsxs("div",{className:"flex items-center gap-x-2",children:[jsx("button",{type:"button",onClick:Lt,className:"rounded px-1.5 py-0.5 bg-content2 hover:bg-content3 transition-colors cursor-pointer text-text-muted hover:text-foreground font-medium",children:E("predict.trade.half")}),jsx("button",{type:"button",onClick:I,className:"rounded px-1.5 py-0.5 bg-content2 hover:bg-content3 transition-colors cursor-pointer text-text-muted hover:text-foreground font-medium",children:E("predict.trade.max")})]})]}),jsx(StyledInput,{"aria-label":E("predict.trade.tradeAmount"),fullWidth:true,placeholder:"0",radius:"lg",size:"lg",inputMode:"decimal",value:at,onChange:B=>Z(B.target.value),onFocus:()=>{Ue.current=true;},onBlur:()=>{Ue.current=false,we(isNaN(i)?"":String(i));},startContent:jsx("span",{className:"text-text-muted text-xl",children:"$"}),classNames:{inputWrapper:"bg-content2 data-[hover=true]:bg-content2 group-data-[focus=true]:bg-content2 h-14 min-h-14",input:"text-lg"}}),_e&&x.length>0&&jsx("div",{className:"flex flex-col gap-y-0.5",children:x.map(B=>jsx("span",{className:"text-xs text-danger",children:B},B))})]}),jsxs("div",{className:"flex items-center justify-end gap-x-1.5 text-sm",children:[jsx("span",{className:"text-text-muted",children:E("predict.trade.balance")}),jsx("span",{className:"font-medium text-foreground tabular-nums",children:u!=null?`$${be(u,2).toFixed(2)}`:"$0"})]}),n==="limit"&&k&&jsxs("div",{className:"flex flex-col gap-y-2",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{className:"text-sm font-medium text-primary",children:E("predict.trade.setExpiration")}),jsx(StyledSwitch,{size:"sm",color:"primary",isSelected:A,onValueChange:he,"aria-label":E("predict.trade.setExpiration")})]}),A&&jsxs(Fragment,{children:[jsx(Select,{"aria-label":E("predict.trade.setExpiration"),selectedKeys:[X],onSelectionChange:B=>{let Ie=Array.from(B)[0];Ie&&Pe(Ie);},size:"sm",radius:"lg",classNames:{trigger:"bg-content2 data-[hover=true]:bg-content2 min-h-10",value:"text-sm"},children:Fu.map(B=>jsx(SelectItem,{children:E(Bu[B])},B))}),X==="custom"&&jsxs("div",{className:"flex gap-x-2",children:[jsx(StyledNumberInput,{"aria-label":E("predict.trade.durationAmount"),size:"sm",radius:"lg",value:isNaN(L)?void 0:L,onValueChange:pt,minValue:1,step:1,formatOptions:Wu,classNames:{base:"flex-1",inputWrapper:"bg-content2 data-[hover=true]:bg-content2 group-data-[focus=true]:bg-content2 min-h-10",input:"text-sm"}}),jsx(Select,{"aria-label":E("predict.trade.durationUnit"),selectedKeys:[G],onSelectionChange:B=>{let Ie=Array.from(B)[0];Ie&&Ve(Ie);},size:"sm",radius:"lg",classNames:{base:"w-32",trigger:"bg-content2 data-[hover=true]:bg-content2 min-h-10",value:"text-sm"},children:Hu.map(B=>jsx(SelectItem,{children:E(Uu[B])},B))})]})]})]}),jsxs("div",{className:"flex flex-col gap-y-2",children:[jsxs("div",{className:"flex items-center justify-between text-sm",children:[jsxs("button",{type:"button",onClick:()=>He(B=>!B),className:"flex items-center gap-x-1 text-text-muted hover:text-foreground cursor-pointer transition-colors",children:[jsx("span",{children:E("predict.trade.odds")}),jsx(ChevronDownIcon,{className:cn$1("h-3.5 w-3.5 transition-transform",st&&"rotate-180")})]}),jsx("span",{className:"text-foreground font-medium tabular-nums",children:U&&Number.isFinite(l)?kt:ct!=null?E("predict.trade.chance",{percent:ct}):dr})]}),st&&jsxs("div",{className:"flex flex-col gap-y-1.5 border-l-2 border-default-300 pl-3 text-sm text-text-muted",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.totalSize")}),jsx("span",{className:"tabular-nums text-foreground",children:!isNaN(i)&&i>0?`$${c.toFixed(2)}`:dr})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.numContracts")}),jsx("span",{className:"tabular-nums text-foreground",children:!isNaN(a)&&a>0?Nr(a):dr})]}),m>0&&jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.estFee")}),jsx("span",{className:"tabular-nums text-foreground",children:`$${m.toFixed(2)}`})]}),m>0&&jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.totalPayment")}),jsx("span",{className:"tabular-nums text-foreground",children:`$${Yt.toFixed(2)}`})]}),m>0&&jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.effectiveOdds")}),jsx("span",{className:"tabular-nums text-foreground",children:et})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.payout")}),jsx("span",{className:"tabular-nums text-foreground",children:!isNaN(i)&&i>0?`$${d.toFixed(2)}`:dr})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.estProfit")}),jsx("span",{className:"tabular-nums text-positive",children:!isNaN(i)&&i>0&&p>0?`+$${p.toFixed(2)}`:dr})]})]})]}),jsx(Button,{color:Ce,fullWidth:true,radius:"lg",size:"lg",isDisabled:mt||xe&&!St&&(f||g||!Qe||b),isLoading:mt||xe&&!St&&(b||f||g),spinner:jsx(Spinner,{size:"sm",color:"current"}),onPress:fo,children:tt})]}),jsx(Eo,{isOpen:ve.isOpen,onClose:ve.onClose,kycUrl:R})]})}function Co({event:e,market:t,variant:r,initialOutcome:o,chain:n,slippageBps:i,onInsufficientBalance:s,onOutcomeChange:a,oddsFormatter:l,outcomeLabels:p}){let{outcome:d,orderType:c,quantity:m,limitPrice:u,shares:f,effectivePrice:g,estimatedCost:b,estimatedFee:h,potentialPayout:S,potentialProfit:x,pricePerShare:y,usdcBalance:v,maxBuyAmount:k,isBalanceLoading:P,isMarketDataLoading:M,isSubmitting:N,authStatus:w,validation:R,isInsufficientBalance:A,supportsLimitOrder:X,kycRequired:L,needsKyc:G,needsSetup:U,kycUrl:oe,expirationEnabled:W,expirationPreset:te,customDuration:ne,customDurationUnit:se,setOutcome:he,setOrderType:Pe,setQuantity:pt,setLimitPrice:Ve,setExpirationEnabled:Be,setExpirationPreset:E,setCustomDuration:st,setCustomDurationUnit:He,submit:ve,notifyInsufficientBalance:at}=Ci({market:t,initialOutcome:o,slippageBps:i,onInsufficientBalance:s}),we=useAuthCallback(ve),Ue=useCallback(O=>{he(O),a?.(O);},[he,a]),qe=useMemo(()=>e?un(e):void 0,[e]),C=useMemo(()=>pn(t,{yesAsk:d==="yes"?y:void 0,noAsk:d==="no"?y:void 0}),[t,d,y]);return jsx(Li,{event:qe,market:C,variant:r,outcome:d,orderType:c,quantity:m,limitPrice:u,shares:f,effectivePrice:g,estimatedCost:b,estimatedFee:h,potentialPayout:S,potentialProfit:x,usdcBalance:v,maxBuyAmount:k,isBalanceLoading:P,isMarketDataLoading:M,isSubmitting:N,authStatus:w,isValid:R.isValid,validationErrors:R.errors,isInsufficientBalance:A,onInsufficientBalance:s?at:void 0,supportsLimitOrder:X,kycRequired:L,needsKyc:G,needsSetup:U,kycUrl:oe,expirationEnabled:W,expirationPreset:te,customDuration:ne,customDurationUnit:se,oddsFormatter:l,outcomeLabels:p,onOutcomeChange:Ue,onOrderTypeChange:Pe,onQuantityChange:pt,onLimitPriceChange:Ve,onExpirationEnabledChange:Be,onExpirationPresetChange:E,onCustomDurationChange:st,onCustomDurationUnitChange:He,onSubmit:we})}var qr="predict-trade";function To({id:e=qr}){return jsx(AsyncModal,{id:e,children:t=>jsx(Xu,{...t})})}function Xu({params:e,isOpen:t,onOpenChange:r}){let{t:o}=useTranslation(),{isMobile:n}=useScreen();return e?jsx(StyledModal,{isOpen:t,onOpenChange:r,size:n?"lg":"md",backdrop:"opaque",hideCloseButton:true,classNames:{base:THEMED_MODAL_BASE_CLASS,body:"!p-0"},children:jsx(ModalContent,{children:jsxs("div",{className:n?"":"p-2",children:[jsx(Co,{event:e.event,market:e.market,initialOutcome:e.initialOutcome,chain:e.chain,slippageBps:e.slippageBps,variant:"flat",onInsufficientBalance:e.onInsufficientBalance}),jsx("div",{className:"px-4 pb-4",children:jsx("button",{type:"button",onClick:()=>r(false),className:"w-full h-12 rounded-xl text-sm font-medium text-text-secondary hover:text-text-primary hover:bg-surface-strong/50 transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:o("common.cancel")})})]})})}):null}var Xr={sortPreset:"volume",sortAsc:false,source:void 0,timeRemaining:void 0,minVolume:void 0,minLiquidity:void 0};function bn(e,t=true){let r=0;return t&&e.source&&r++,e.timeRemaining&&r++,e.minVolume&&r++,e.minLiquidity&&r++,r}function Oi({isOpen:e,onClose:t,value:r,onChange:o,enableKalshi:n=true}){let{t:i}=useTranslation(),[s,a]=useState(r),l=useMemo(()=>n?Xr:{...Xr,source:"polymarket"},[n]),p=useCallback(S=>{S?a(r):t();},[r,t]),d=useCallback(()=>{a(l);},[l]),c=useCallback(()=>{o(s),t();},[s,o,t]),m=useCallback((S,x)=>{a(y=>({...y,[S]:x}));},[]),u=useMemo(()=>bn(s,n),[s,n]),f=useMemo(()=>[{value:void 0,label:i("predict.filter.all")},{value:"polymarket",label:i("predict.platform.polymarket")},{value:"kalshi",label:i("predict.platform.kalshi")}],[i]),g=useMemo(()=>[{value:void 0,label:i("predict.filter.all")},{value:"1d",label:i("predict.filter.lessThanDay")},{value:"7d",label:i("predict.filter.lessThanWeek")},{value:"30d",label:i("predict.filter.lessThanMonth")}],[i]),b=useMemo(()=>[{value:void 0,label:i("predict.filter.all")},{value:"1000",label:">$1K"},{value:"10000",label:">$10K"},{value:"100000",label:">$100K"},{value:"1000000",label:">$1M"}],[i]),h=useMemo(()=>[{value:void 0,label:i("predict.filter.all")},{value:"1000",label:">$1K"},{value:"10000",label:">$10K"},{value:"100000",label:">$100K"},{value:"1000000",label:">$1M"}],[i]);return jsx(StyledModal,{isOpen:e,onOpenChange:p,size:"md",backdrop:"opaque",scrollBehavior:"inside",classNames:{base:THEMED_MODAL_BASE_CLASS,body:"!p-0"},children:jsx(ModalContent,{children:jsxs("div",{children:[jsxs("div",{className:"flex items-center justify-between px-5 pt-5 pb-4",children:[jsx("h3",{className:"text-base font-semibold text-text-primary",children:i("predict.filter.title")}),jsx(np,{onClick:()=>p(false)})]}),jsxs("div",{style:{padding:"0 20px 16px",display:"flex",flexDirection:"column",gap:20},children:[n&&jsx(vn,{label:i("predict.filter.platform"),children:jsx(xn,{options:f,selected:s.source,onSelect:S=>m("source",S)})}),jsx(vn,{label:i("predict.filter.timeRemaining"),children:jsx(xn,{options:g,selected:s.timeRemaining,onSelect:S=>m("timeRemaining",S)})}),jsx(vn,{label:i("predict.filter.minVolume"),children:jsx(xn,{options:b,selected:s.minVolume,onSelect:S=>m("minVolume",S)})}),jsx(vn,{label:i("predict.filter.minLiquidity"),children:jsx(xn,{options:h,selected:s.minLiquidity,onSelect:S=>m("minLiquidity",S)})})]}),jsxs("div",{className:"flex items-center gap-3 px-5 py-4",style:{borderTop:"1px solid var(--color-border-subtle)"},children:[jsx("button",{type:"button",className:"inline-flex items-center justify-center py-2.5 px-5 rounded-[10px] text-text-secondary text-sm font-medium hover:text-text-primary transition-colors cursor-pointer",onClick:d,children:i("predict.filter.reset")}),jsxs("button",{type:"button",className:"flex-1 inline-flex items-center justify-center gap-2 py-2.5 rounded-[10px] bg-action-primary text-text-inverse text-sm font-semibold hover:bg-action-primary-hover transition-colors cursor-pointer",onClick:c,children:[i("predict.filter.showResults"),u>0&&jsxs("span",{style:{opacity:.7},children:["(",u,")"]})]})]})]})})})}function vn({label:e,children:t}){return jsxs("div",{style:{display:"flex",flexDirection:"column",gap:10},children:[jsx("span",{style:{fontSize:11,fontWeight:500,color:"var(--color-text-muted)",textTransform:"uppercase",letterSpacing:"0.05em"},children:e}),t]})}function np({onClick:e}){return jsx("button",{type:"button",onClick:e,className:"p-1 rounded-[10px] hover:bg-surface-strong/50 text-text-secondary hover:text-text-primary transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:jsxs("svg",{width:16,height:16,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round",children:[jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})})}function xn({options:e,selected:t,onSelect:r,allowDeselect:o=true}){return jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:8},children:e.map(n=>{let i=t===n.value;return jsx("button",{type:"button",onClick:()=>{r(i&&o?void 0:n.value);},style:{flexShrink:0,borderRadius:10,padding:"6px 14px",fontSize:13,fontWeight:500,cursor:"pointer",transition:"all 0.15s",border:i?"1px solid color-mix(in srgb, var(--color-action-primary) 30%, transparent)":"1px solid var(--color-border-subtle)",background:i?"color-mix(in srgb, var(--color-action-primary) 8%, transparent)":"hsl(var(--heroui-content3) / 0.4)",color:i?"var(--color-action-primary)":"var(--color-text-secondary)"},onMouseEnter:s=>{i||(s.currentTarget.style.background="hsl(var(--heroui-content3) / 0.8)",s.currentTarget.style.color="var(--color-text-primary)");},onMouseLeave:s=>{i||(s.currentTarget.style.background="hsl(var(--heroui-content3) / 0.4)",s.currentTarget.style.color="var(--color-text-secondary)");},children:n.label},n.value??"__all")})})}var _i={start_time:{sort_by:"created_at"},volume:{sort_by:"volume"},liquidity:{sort_by:"liquidity"},ending_soon:{sort_by:"end_at"}},Ma={start_time:"predict.sort.startTime",volume:"predict.sort.volume",liquidity:"predict.sort.liquidity",ending_soon:"predict.sort.endingSoon"},mp=["start_time","volume","liquidity","ending_soon"],wa={display:"inline-flex",alignItems:"center",gap:8,borderRadius:10,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content3) / 0.6)",padding:"8px 12px",fontSize:14,color:"var(--color-text-primary)",cursor:"pointer",transition:"all 0.15s"},fp={position:"absolute",left:0,top:"100%",zIndex:20,marginTop:8,borderRadius:14,border:"1px solid var(--color-border-control)",background:"var(--color-surface-interactive)",boxShadow:"0 25px 50px -12px rgba(0,0,0,0.5)",overflow:"hidden"};function Ii({sortPreset:e,onSortChange:t,sortAsc:r,onSortAscChange:o,onFilterPress:n,filterCount:i=0,className:s}){let{t:a}=useTranslation(),[l,p]=useState(false),d=useRef(null),c=useCallback(u=>{d.current&&!d.current.contains(u.target)&&p(false);},[]);useEffect(()=>(document.addEventListener("mousedown",c),()=>document.removeEventListener("mousedown",c)),[c]),useEffect(()=>{if(!l)return;let u=f=>{f.key==="Escape"&&p(false);};return document.addEventListener("keydown",u),()=>document.removeEventListener("keydown",u)},[l]);let m=Ea[e];return jsxs("div",{className:s,style:{display:"flex",alignItems:"center",gap:8},children:[jsxs("div",{ref:d,style:{position:"relative"},children:[jsxs("button",{type:"button",style:wa,onMouseEnter:u=>{u.currentTarget.style.background="var(--color-surface-strong)";},onMouseLeave:u=>{u.currentTarget.style.background="hsl(var(--heroui-content3) / 0.6)";},onClick:()=>p(u=>!u),children:[jsx(gp,{}),jsx(m,{className:"size-4 shrink-0",style:{color:"var(--color-text-secondary)"}}),jsx("span",{className:"hidden sm:block",style:{color:"var(--color-text-primary)"},children:a(Ma[e])}),jsx(vp,{open:l})]}),l&&jsx("div",{style:{...fp,width:224,padding:4},children:mp.map(u=>{let f=Ea[u],g=e===u;return jsxs("button",{type:"button",style:{display:"flex",width:"100%",alignItems:"center",gap:12,padding:"10px 12px",textAlign:"left",fontSize:14,border:"none",cursor:"pointer",transition:"all 0.15s",background:g?"color-mix(in srgb, var(--color-action-primary) 8%, transparent)":"transparent",color:g?"var(--color-action-primary)":"var(--color-text-secondary)",borderRadius:10},onMouseEnter:b=>{g||(b.currentTarget.style.background="hsl(var(--heroui-content3) / 0.5)",b.currentTarget.style.color="var(--color-text-primary)");},onMouseLeave:b=>{g||(b.currentTarget.style.background="transparent",b.currentTarget.style.color="var(--color-text-secondary)");},onClick:()=>{e===u?o(!r):t(u),p(false);},children:[jsx(f,{className:"size-4 shrink-0",style:{color:g?"var(--color-action-primary)":"var(--color-text-muted)"}}),jsx("span",{style:{flex:1,fontWeight:500},children:a(Ma[u])}),g&&jsx("svg",{viewBox:"0 0 24 24",style:{width:16,height:16,color:"var(--color-action-primary)",flexShrink:0},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsx("path",{d:"M20 6 9 17l-5-5"})})]},u)})})]}),jsx("button",{type:"button",style:{borderRadius:10,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content3) / 0.6)",width:36,height:36,color:"var(--color-text-secondary)",cursor:"pointer",transition:"all 0.15s",display:"inline-flex",alignItems:"center",justifyContent:"center",fontSize:14},onMouseEnter:u=>{u.currentTarget.style.background="var(--color-surface-strong)",u.currentTarget.style.color="var(--color-text-primary)";},onMouseLeave:u=>{u.currentTarget.style.background="hsl(var(--heroui-content3) / 0.6)",u.currentTarget.style.color="var(--color-text-secondary)";},onClick:()=>o(!r),children:r?"\u2191":"\u2193"}),jsxs("div",{style:{position:"relative",display:"inline-flex"},children:[jsxs("button",{type:"button",style:wa,onMouseEnter:u=>{u.currentTarget.style.background="var(--color-surface-strong)";},onMouseLeave:u=>{u.currentTarget.style.background="hsl(var(--heroui-content3) / 0.6)";},onClick:n,children:[jsx(hp,{}),jsx("span",{className:"hidden sm:block",style:{color:"var(--color-text-primary)"},children:a("predict.filter.title")})]}),i>0&&jsx("span",{style:{position:"absolute",top:-4,right:-4,minWidth:16,height:16,display:"flex",alignItems:"center",justifyContent:"center",borderRadius:8,background:"var(--color-action-primary)",color:"var(--color-text-inverse)",fontSize:10,fontWeight:600,padding:"0 4px"},children:i})]})]})}var Ea={start_time:CalendarIcon,volume:ChartLineIcon,liquidity:DropletIcon,ending_soon:TimerIcon};function gp(){return jsxs("svg",{viewBox:"0 0 24 24",style:{width:14,height:14,color:"var(--color-text-secondary)"},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[jsx("path",{d:"m21 16-4 4-4-4"}),jsx("path",{d:"M17 20V4"}),jsx("path",{d:"m3 8 4-4 4 4"}),jsx("path",{d:"M7 4v16"})]})}function hp(){return jsx("svg",{viewBox:"0 0 24 24",style:{width:14,height:14,color:"var(--color-text-secondary)"},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsx("path",{d:"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z"})})}function vp({open:e}){return jsx("svg",{viewBox:"0 0 24 24",style:{width:14,height:14,color:"var(--color-text-muted)",transition:"transform 0.15s",transform:e?"rotate(180deg)":void 0},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsx("path",{d:"m6 9 6 6 6-6"})})}function Di(e={}){let{i18n:t}=useTranslation(),{tagSlugSelection:r,limit:o,status:n,sort_by:i,sort_asc:s,source:a,with_markets:l,minVolume:p,minLiquidity:d,timeRemaining:c,markets_limit:m,lang:u}=e,f=u??t.resolvedLanguage??t.language,g=useMemo(()=>resolveEventsParams({tagSlugSelection:r,limit:o,status:n,sort_by:i,sort_asc:s,source:a,with_markets:l,minVolume:p,minLiquidity:d,timeRemaining:c,markets_limit:m,lang:f}),[f,o,m,d,p,s,i,a,n,r,c,l]),{data:b,isLoading:h,isFetching:S,isFetchingNextPage:x,isError:y,error:v,hasNextPage:k,fetchNextPage:P,refetch:M}=useInfiniteEvents(g),N=useMemo(()=>b?.pages.flatMap(A=>A.items).filter(A=>A!=null)??[],[b]),w=useCallback(()=>{P();},[P]),R=useCallback(()=>{M();},[M]);return {data:N,isLoading:h,isFetching:S&&!x,isFetchingMore:x,isError:y,error:v??null,hasMore:k??false,fetchMore:w,refetch:R}}var Ra=`
2
2
  @keyframes evtShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
3
3
  @media(max-width:1279px){.evt-skel-grid{grid-template-columns:repeat(3,1fr)!important}}
4
4
  @media(max-width:1023px){.evt-skel-grid{grid-template-columns:repeat(2,1fr)!important}.evt-skel-card{min-height:200px!important}}
5
5
  @media(max-width:767px){.evt-skel-grid{grid-template-columns:1fr!important}}
6
- `,La={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:"evtShimmer 1.8s ease-in-out infinite",borderRadius:6};function yn(e){return {...La,animationDelay:`${e}ms`}}function kn({count:e=6}){return jsxs(Fragment,{children:[jsx("style",{children:Ra}),jsx("div",{className:"evt-skel-grid",style:{display:"grid",gridTemplateColumns:"repeat(4, 1fr)",width:"100%"},children:Array.from({length:e}).map((t,r)=>jsx(kp,{index:r},r))})]})}function kp({index:e}){let t=e*120,r={...La,animationDelay:`${t}ms`},o=e%3===0?"85%":e%3===1?"70%":"60%";return jsx("div",{style:{padding:8},children:jsxs("div",{className:"evt-skel-card",style:{display:"flex",flexDirection:"column",minHeight:248,borderRadius:14,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content2) / 0.4)",overflow:"hidden"},children:[jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"14px 14px 8px"},children:[jsx("div",{style:{...r,width:36,height:36,borderRadius:10,flexShrink:0}}),jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:6},children:[jsx("div",{style:{...r,height:12,width:o}}),jsx("div",{style:{...r,height:10,width:"40%"}})]})]}),jsx("div",{style:{display:"flex",flexDirection:"column",gap:6,padding:"4px 14px 14px",flex:1},children:[0,1,2].map(n=>jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8},children:[jsx("div",{style:{...r,height:11,width:n===0?"55%":n===1?"45%":"35%"}}),jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[jsx("div",{style:{...r,height:11,width:32}}),jsx("div",{style:{...r,height:28,width:80,borderRadius:8}})]})]},n))}),jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",borderTop:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content3) / 0.15)",padding:"8px 14px"},children:[jsx("div",{style:{...r,height:10,width:56}}),jsx("div",{style:{...r,height:10,width:72}})]})]})})}function Sp(){return jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 16px"},children:[jsx("div",{style:{display:"flex",alignItems:"center",gap:10,minHeight:40,flex:1},children:[48,64,48,56,72,56].map((e,t)=>jsx("div",{style:{...yn(t*50),height:28,width:e,borderRadius:6}},t))}),jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,flexShrink:0},children:[jsx("div",{style:{...yn(0),height:36,width:120,borderRadius:10}}),jsx("div",{style:{...yn(50),height:36,width:36,borderRadius:10}}),jsx("div",{style:{...yn(100),height:36,width:80,borderRadius:10}})]})]})}function Pp({count:e=24}){return jsxs("div",{style:{minHeight:"100vh",position:"relative",width:"100%",maxWidth:1680,margin:"0 auto"},children:[jsx("style",{children:Ra}),jsx("div",{style:{position:"sticky",top:0,zIndex:40,background:"rgba(10,10,11,0.8)",backdropFilter:"blur(24px)",WebkitBackdropFilter:"blur(24px)",borderBottom:"1px solid var(--color-border-subtle)"},children:jsx(Sp,{})}),jsx("div",{style:{padding:"12px 8px 80px"},children:jsx(kn,{count:e})})]})}function Mp(e,t){let r={...e};return delete r.price,t||(delete r.best_bid,delete r.best_ask),r}function Sn(e){if(!e.capability?.enabled)return e.legacyEvent;let t=e.marketDataEvent??e.legacyEvent;return {...t,markets:t.markets?.map(r=>({...r,outcomes:r.outcomes.map(o=>Mp(o,!!e.marketDataEvent))}))}}function Jr(e,t){if(e)return t?e.best_ask:e.best_ask??e.price}var Oa=3,Ip={polymarket:{border:"rgba(80,162,255,0.4)",shadow:"0 2px 18px rgba(80,162,255,0.45)"},kalshi:{border:"rgba(0,212,146,0.4)",shadow:"0 2px 18px rgba(0,212,146,0.45)"}},Dp={border:"hsl(var(--heroui-primary) / 0.4)",shadow:"0 2px 18px hsl(var(--heroui-primary) / 0.45)"},Ai={bg:"hsl(var(--heroui-primary) / 0.14)",text:"hsl(var(--heroui-primary))",shadow:"hsl(var(--heroui-primary) / 0.18)"},Ba={bg:"hsl(var(--heroui-secondary) / 0.14)",text:"hsl(var(--heroui-secondary))",shadow:"hsl(var(--heroui-secondary) / 0.18)"},Ap={bg:"rgba(239, 68, 68, 0.14)",text:"rgb(239, 68, 68)",shadow:"rgba(239, 68, 68, 0.18)"},To=[{bg:"rgba(139,92,246,0.14)",text:"rgb(139,92,246)",shadow:"rgba(139,92,246,0.18)"},{bg:"rgba(34,197,94,0.14)",text:"rgb(34,197,94)",shadow:"rgba(34,197,94,0.18)"},{bg:"rgba(0,166,212,0.14)",text:"rgb(0,166,212)",shadow:"rgba(0,166,212,0.18)"},{bg:"rgba(194,120,32,0.14)",text:"rgb(194,120,32)",shadow:"rgba(194,120,32,0.18)"},{bg:"rgba(202,138,4,0.14)",text:"rgb(202,138,4)",shadow:"rgba(202,138,4,0.18)"},{bg:"rgba(236,72,153,0.14)",text:"rgb(236,72,153)",shadow:"rgba(236,72,153,0.18)"},{bg:"rgba(99,102,241,0.14)",text:"rgb(99,102,241)",shadow:"rgba(99,102,241,0.18)"},{bg:"rgba(244,114,82,0.14)",text:"rgb(244,114,82)",shadow:"rgba(244,114,82,0.18)"}];function _a(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r)|0;return Math.abs(t)}function Fp(e){let t=e.outcomes?.map(s=>s.label?.toLowerCase().trim()??"")??[];if(t.some(s=>s==="up")&&t.some(s=>s==="down"))return [Ai,Ap];if(t.some(s=>s==="yes")&&t.some(s=>s==="no"))return [Ai,Ba];let r=t[0]??"",o=t[1]??"",n=_a(r)%To.length,i=_a(o)%To.length;return i===n&&(i=(i+1)%To.length),[To[n],To[i]]}function Ia(e){return e.title_trans||e.title}function Bp(e){return e.question_trans||e.question}function Fi(e,t){return e?.label_trans||e?.label||t}function Ha(e){return Fi(e.outcomes?.[0],Bp(e))}function Bi(e,t){let r=e.outcomes?.[0];return r?Jr(r,t)??null:null}function Ua(e,t){let r=Bi(e,t);return r!=null?parseFloat((r*100).toFixed(2)):null}function Wa(e){return e===null?"\u2014":e<=1&&e>0?"< 1%":e>=99&&e<100?"> 99%":`${e}%`}function Da(e,t){let r=e.outcomes?.[0],o=Jr(r,t);return o===void 0?"\u2014":parseFloat((o*100).toFixed(2)).toString()}function Aa(e,t){let r=e.outcomes?.[1];if(r){let i=Jr(r,t);return i===void 0?"\u2014":parseFloat((i*100).toFixed(2)).toString()}if(t)return "\u2014";let o=e.outcomes?.[0],n=o?.best_ask??o?.price??0;return parseFloat(((1-n)*100).toFixed(2)).toString()}function Hp(e){let t=new Date(e).getTime()-Date.now();if(t<=0)return null;let r=Math.floor(t/864e5),o=Math.floor(t%864e5/36e5),n=Math.floor(t%36e5/6e4),i=[];return r>0&&i.push(`${r}d`),o>0&&i.push(`${o}h`),i.push(`${n}m`),i.join(" ")}var Up=`
6
+ `,La={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:"evtShimmer 1.8s ease-in-out infinite",borderRadius:6};function yn(e){return {...La,animationDelay:`${e}ms`}}function kn({count:e=6}){return jsxs(Fragment,{children:[jsx("style",{children:Ra}),jsx("div",{className:"evt-skel-grid",style:{display:"grid",gridTemplateColumns:"repeat(4, 1fr)",width:"100%"},children:Array.from({length:e}).map((t,r)=>jsx(kp,{index:r},r))})]})}function kp({index:e}){let t=e*120,r={...La,animationDelay:`${t}ms`},o=e%3===0?"85%":e%3===1?"70%":"60%";return jsx("div",{style:{padding:8},children:jsxs("div",{className:"evt-skel-card",style:{display:"flex",flexDirection:"column",minHeight:248,borderRadius:14,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content2) / 0.4)",overflow:"hidden"},children:[jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"14px 14px 8px"},children:[jsx("div",{style:{...r,width:36,height:36,borderRadius:10,flexShrink:0}}),jsxs("div",{style:{flex:1,display:"flex",flexDirection:"column",gap:6},children:[jsx("div",{style:{...r,height:12,width:o}}),jsx("div",{style:{...r,height:10,width:"40%"}})]})]}),jsx("div",{style:{display:"flex",flexDirection:"column",gap:6,padding:"4px 14px 14px",flex:1},children:[0,1,2].map(n=>jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:8},children:[jsx("div",{style:{...r,height:11,width:n===0?"55%":n===1?"45%":"35%"}}),jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[jsx("div",{style:{...r,height:11,width:32}}),jsx("div",{style:{...r,height:28,width:80,borderRadius:8}})]})]},n))}),jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",borderTop:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content3) / 0.15)",padding:"8px 14px"},children:[jsx("div",{style:{...r,height:10,width:56}}),jsx("div",{style:{...r,height:10,width:72}})]})]})})}function Sp(){return jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",padding:"10px 16px"},children:[jsx("div",{style:{display:"flex",alignItems:"center",gap:10,minHeight:40,flex:1},children:[48,64,48,56,72,56].map((e,t)=>jsx("div",{style:{...yn(t*50),height:28,width:e,borderRadius:6}},t))}),jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,flexShrink:0},children:[jsx("div",{style:{...yn(0),height:36,width:120,borderRadius:10}}),jsx("div",{style:{...yn(50),height:36,width:36,borderRadius:10}}),jsx("div",{style:{...yn(100),height:36,width:80,borderRadius:10}})]})]})}function Pp({count:e=24}){return jsxs("div",{style:{minHeight:"100vh",position:"relative",width:"100%",maxWidth:1680,margin:"0 auto"},children:[jsx("style",{children:Ra}),jsx("div",{style:{position:"sticky",top:0,zIndex:40,background:"rgba(10,10,11,0.8)",backdropFilter:"blur(24px)",WebkitBackdropFilter:"blur(24px)",borderBottom:"1px solid var(--color-border-subtle)"},children:jsx(Sp,{})}),jsx("div",{style:{padding:"12px 8px 80px"},children:jsx(kn,{count:e})})]})}function Mp(e,t){let r={...e};return delete r.price,t||(delete r.best_bid,delete r.best_ask),r}function Sn(e){if(!e.capability?.enabled)return e.legacyEvent;let t=e.marketDataEvent??e.legacyEvent;return {...t,markets:t.markets?.map(r=>({...r,outcomes:r.outcomes.map(o=>Mp(o,!!e.marketDataEvent))}))}}function Jr(e,t){if(e)return t?e.best_ask:e.best_ask??e.price}var Oa=3,Ip={polymarket:{border:"rgba(80,162,255,0.4)",shadow:"0 2px 18px rgba(80,162,255,0.45)"},kalshi:{border:"rgba(0,212,146,0.4)",shadow:"0 2px 18px rgba(0,212,146,0.45)"}},Dp={border:"hsl(var(--heroui-primary) / 0.4)",shadow:"0 2px 18px hsl(var(--heroui-primary) / 0.45)"},Ai={bg:"hsl(var(--heroui-primary) / 0.14)",text:"hsl(var(--heroui-primary))",shadow:"hsl(var(--heroui-primary) / 0.18)"},Ba={bg:"hsl(var(--heroui-secondary) / 0.14)",text:"hsl(var(--heroui-secondary))",shadow:"hsl(var(--heroui-secondary) / 0.18)"},Ap={bg:"rgba(239, 68, 68, 0.14)",text:"rgb(239, 68, 68)",shadow:"rgba(239, 68, 68, 0.18)"},Ro=[{bg:"rgba(139,92,246,0.14)",text:"rgb(139,92,246)",shadow:"rgba(139,92,246,0.18)"},{bg:"rgba(34,197,94,0.14)",text:"rgb(34,197,94)",shadow:"rgba(34,197,94,0.18)"},{bg:"rgba(0,166,212,0.14)",text:"rgb(0,166,212)",shadow:"rgba(0,166,212,0.18)"},{bg:"rgba(194,120,32,0.14)",text:"rgb(194,120,32)",shadow:"rgba(194,120,32,0.18)"},{bg:"rgba(202,138,4,0.14)",text:"rgb(202,138,4)",shadow:"rgba(202,138,4,0.18)"},{bg:"rgba(236,72,153,0.14)",text:"rgb(236,72,153)",shadow:"rgba(236,72,153,0.18)"},{bg:"rgba(99,102,241,0.14)",text:"rgb(99,102,241)",shadow:"rgba(99,102,241,0.18)"},{bg:"rgba(244,114,82,0.14)",text:"rgb(244,114,82)",shadow:"rgba(244,114,82,0.18)"}];function _a(e){let t=0;for(let r=0;r<e.length;r++)t=(t<<5)-t+e.charCodeAt(r)|0;return Math.abs(t)}function Fp(e){let t=e.outcomes?.map(s=>s.label?.toLowerCase().trim()??"")??[];if(t.some(s=>s==="up")&&t.some(s=>s==="down"))return [Ai,Ap];if(t.some(s=>s==="yes")&&t.some(s=>s==="no"))return [Ai,Ba];let r=t[0]??"",o=t[1]??"",n=_a(r)%Ro.length,i=_a(o)%Ro.length;return i===n&&(i=(i+1)%Ro.length),[Ro[n],Ro[i]]}function Ia(e){return e.title_trans||e.title}function Bp(e){return e.question_trans||e.question}function Fi(e,t){return e?.label_trans||e?.label||t}function Ha(e){return Fi(e.outcomes?.[0],Bp(e))}function Bi(e,t){let r=e.outcomes?.[0];return r?Jr(r,t)??null:null}function Ua(e,t){let r=Bi(e,t);return r!=null?parseFloat((r*100).toFixed(2)):null}function Wa(e){return e===null?"\u2014":e<=1&&e>0?"< 1%":e>=99&&e<100?"> 99%":`${e}%`}function Da(e,t){let r=e.outcomes?.[0],o=Jr(r,t);return o===void 0?"\u2014":parseFloat((o*100).toFixed(2)).toString()}function Aa(e,t){let r=e.outcomes?.[1];if(r){let i=Jr(r,t);return i===void 0?"\u2014":parseFloat((i*100).toFixed(2)).toString()}if(t)return "\u2014";let o=e.outcomes?.[0],n=o?.best_ask??o?.price??0;return parseFloat(((1-n)*100).toFixed(2)).toString()}function Hp(e){let t=new Date(e).getTime()-Date.now();if(t<=0)return null;let r=Math.floor(t/864e5),o=Math.floor(t%864e5/36e5),n=Math.floor(t%36e5/6e4),i=[];return r>0&&i.push(`${r}d`),o>0&&i.push(`${o}h`),i.push(`${n}m`),i.join(" ")}var Up=`
7
7
  .badge-shine { position: relative; overflow: hidden; }
8
8
  .badge-shine::after {
9
9
  content: "";
@@ -33,7 +33,7 @@ import {createContext,memo,useRef,forwardRef,useState,useImperativeHandle,useMem
33
33
  @media(max-width:767px){.evt-card-grid{grid-template-columns:1fr!important}}
34
34
  @media(min-width:768px) and (max-width:1023px){.evt-card-grid{grid-template-columns:repeat(2,1fr)!important}}
35
35
  @media(min-width:1024px) and (max-width:1279px){.evt-card-grid{grid-template-columns:repeat(3,1fr)!important}}
36
- `}),jsx("div",{className:"evt-card-grid",style:{display:"grid",gridTemplateColumns:"repeat(4, 1fr)"},children:e.map((g,b)=>g==null?null:jsx("div",{style:{padding:im,animation:`eventCardEnter 0.45s cubic-bezier(0.34,1.56,0.64,1) ${b%4*35}ms both`},children:jsx(Ui,{event:g,href:s?.(g),LinkComponent:a,onSelect:n,onSelectOutcome:i,onHover:l,marketDataCapability:p,marketDataEvent:d?.(g)})},`${g.source}-${g.slug}`))}),jsx("div",{ref:m,style:{display:"flex",flexDirection:"column",alignItems:"center",gap:8,padding:"16px 0",minHeight:1},children:r&&jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,color:"var(--color-text-muted)",fontSize:13},children:[jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{animation:"evt-load-spin 1s linear infinite"},children:jsx("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})}),c("predict.events.loadMore")]})}),f&&jsx(sm,{onScrollToTop:u})]})}function sm({onScrollToTop:e}){let{t}=useTranslation();return jsxs("div",{className:"flex w-full flex-col items-center justify-center gap-y-4 py-6",children:[jsxs("div",{className:"flex w-full items-center justify-center gap-x-4",children:[jsx("div",{className:"h-px w-16 bg-surface-strong"}),jsx("span",{className:"text-xs font-medium text-text-muted",children:t("predict.event.endOfList")}),jsx("div",{className:"h-px w-16 bg-surface-strong"})]}),jsxs("button",{type:"button",className:"flex cursor-pointer items-center gap-x-1 text-xs font-medium text-text-secondary",onClick:e,children:[jsx("span",{className:"iconify size-4 ph--arrow-up-bold"}),jsx("span",{children:t("predict.event.backToTop")})]})]})}function $i({tagSlugSelection:e,limit:t=24,status:r,sort_by:o,sort_asc:n,source:i,with_markets:s,timeRemaining:a,minVolume:l,minLiquidity:p,markets_limit:d,lang:c,onSelect:m,onSelectOutcome:u,getEventHref:f,LinkComponent:g,onHover:b,marketDataCapability:h,getMarketDataEvent:S}){let{data:x,hasMore:y,fetchMore:v,isFetching:k,isFetchingMore:P}=Di({tagSlugSelection:e,limit:t,status:r,sort_by:o,sort_asc:n,source:i,with_markets:s,timeRemaining:a,minVolume:l,minLiquidity:p,markets_limit:d,lang:c});return k?jsx(kn,{count:24}):jsx(zi,{events:x,hasMore:y,isFetchingMore:P,onFetchMore:v,onSelect:m,onSelectOutcome:u,getEventHref:f,LinkComponent:g,onHover:b,marketDataCapability:h,getMarketDataEvent:S})}function cm({onSelect:e,onSelectOutcome:t,getEventHref:r,LinkComponent:o,onHover:n,onInsufficientBalance:i,enableKalshi:s=true,lang:a,marketDataCapability:l,getMarketDataEvent:p}){let[d,c]=useState({categorySlug:null,tagSlug:null}),[m,u]=useState(()=>s?Xr:{...Xr,source:"polymarket"}),{isOpen:f,onOpen:g,onClose:b}=useDisclosure(),{onOpen:h}=useAsyncModal(qr),S=useCallback((w,R,A)=>{t?.(w,R,A),h({params:{event:w,market:R,initialOutcome:A,onInsufficientBalance:i}});},[t,h,i]),x=useCallback(w=>{c(w);},[]),y=useCallback(w=>{u(R=>({...R,sortPreset:w}));},[]),v=useCallback(w=>{u(R=>({...R,sortAsc:w}));},[]),k=useCallback(w=>{u(w);},[]),P=useMemo(()=>_i[m.sortPreset].sort_by,[m.sortPreset]),M=useMemo(()=>bn(m,s),[m,s]),N=useMemo(()=>jsx(Ii,{sortPreset:m.sortPreset,onSortChange:y,sortAsc:m.sortAsc,onSortAscChange:v,onFilterPress:g,filterCount:M}),[m.sortPreset,m.sortAsc,M,y,v,g]);return jsxs("div",{style:{minHeight:"100vh",position:"relative",width:"100%",maxWidth:1680,margin:"0 auto"},children:[jsx("div",{style:{position:"sticky",top:0,zIndex:40,background:"rgba(10,10,11,0.8)",backdropFilter:"blur(24px)",WebkitBackdropFilter:"blur(24px)",borderBottom:"1px solid var(--color-border-subtle)"},children:jsx(gi,{onSelect:x,trailing:N})}),jsxs("div",{style:{padding:"12px 8px 80px"},children:[jsx(Oi,{isOpen:f,onClose:b,value:m,onChange:k,enableKalshi:s}),jsx($i,{tagSlugSelection:d,lang:a,sort_by:P,sort_asc:m.sortAsc,source:m.source,timeRemaining:m.timeRemaining,minVolume:m.minVolume,minLiquidity:m.minLiquidity,onSelect:e,onSelectOutcome:S,getEventHref:r,LinkComponent:o,onHover:n,marketDataCapability:l,getMarketDataEvent:p})]}),jsx(Co,{})]})}function Qa(e){return formatAmountInUsd(e)}var pm=[{key:"total_events",labelKey:"predict.events.stats.totalEvents",format:e=>formatAmount(e),valueColor:"#c7ff2e",gradientFrom:"rgba(199,255,46,0.18)",gradientTo:"rgba(199,255,46,0.04)"},{key:"total_volume_24h",labelKey:"predict.events.stats.volume24h",format:Qa,valueColor:"#f76816",gradientFrom:"rgba(247,104,22,0.18)",gradientTo:"rgba(247,104,22,0.04)"},{key:"avg_liquidity",labelKey:"predict.events.stats.avgLiquidity",format:Qa,valueColor:"#17c964",gradientFrom:"rgba(23,201,100,0.18)",gradientTo:"rgba(23,201,100,0.04)"},{key:"active_sources",labelKey:"predict.events.stats.activeSources",format:e=>formatAmount(e),valueColor:"#f5a524",gradientFrom:"rgba(245,165,36,0.18)",gradientTo:"rgba(245,165,36,0.04)"}];function mm({stats:e}){let{t}=useTranslation();return jsxs(Fragment,{children:[jsx("style",{children:`
36
+ `}),jsx("div",{className:"evt-card-grid",style:{display:"grid",gridTemplateColumns:"repeat(4, 1fr)"},children:e.map((g,b)=>g==null?null:jsx("div",{style:{padding:im,animation:`eventCardEnter 0.45s cubic-bezier(0.34,1.56,0.64,1) ${b%4*35}ms both`},children:jsx(Ui,{event:g,href:s?.(g),LinkComponent:a,onSelect:n,onSelectOutcome:i,onHover:l,marketDataCapability:p,marketDataEvent:d?.(g)})},`${g.source}-${g.slug}`))}),jsx("div",{ref:m,style:{display:"flex",flexDirection:"column",alignItems:"center",gap:8,padding:"16px 0",minHeight:1},children:r&&jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,color:"var(--color-text-muted)",fontSize:13},children:[jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",style:{animation:"evt-load-spin 1s linear infinite"},children:jsx("path",{d:"M21 12a9 9 0 1 1-6.219-8.56"})}),c("predict.events.loadMore")]})}),f&&jsx(sm,{onScrollToTop:u})]})}function sm({onScrollToTop:e}){let{t}=useTranslation();return jsxs("div",{className:"flex w-full flex-col items-center justify-center gap-y-4 py-6",children:[jsxs("div",{className:"flex w-full items-center justify-center gap-x-4",children:[jsx("div",{className:"h-px w-16 bg-surface-strong"}),jsx("span",{className:"text-xs font-medium text-text-muted",children:t("predict.event.endOfList")}),jsx("div",{className:"h-px w-16 bg-surface-strong"})]}),jsxs("button",{type:"button",className:"flex cursor-pointer items-center gap-x-1 text-xs font-medium text-text-secondary",onClick:e,children:[jsx("span",{className:"iconify size-4 ph--arrow-up-bold"}),jsx("span",{children:t("predict.event.backToTop")})]})]})}function $i({tagSlugSelection:e,limit:t=24,status:r,sort_by:o,sort_asc:n,source:i,with_markets:s,timeRemaining:a,minVolume:l,minLiquidity:p,markets_limit:d,lang:c,onSelect:m,onSelectOutcome:u,getEventHref:f,LinkComponent:g,onHover:b,marketDataCapability:h,getMarketDataEvent:S}){let{data:x,hasMore:y,fetchMore:v,isFetching:k,isFetchingMore:P}=Di({tagSlugSelection:e,limit:t,status:r,sort_by:o,sort_asc:n,source:i,with_markets:s,timeRemaining:a,minVolume:l,minLiquidity:p,markets_limit:d,lang:c});return k?jsx(kn,{count:24}):jsx(zi,{events:x,hasMore:y,isFetchingMore:P,onFetchMore:v,onSelect:m,onSelectOutcome:u,getEventHref:f,LinkComponent:g,onHover:b,marketDataCapability:h,getMarketDataEvent:S})}function cm({onSelect:e,onSelectOutcome:t,getEventHref:r,LinkComponent:o,onHover:n,onInsufficientBalance:i,enableKalshi:s=true,lang:a,marketDataCapability:l,getMarketDataEvent:p}){let[d,c]=useState({categorySlug:null,tagSlug:null}),[m,u]=useState(()=>s?Xr:{...Xr,source:"polymarket"}),{isOpen:f,onOpen:g,onClose:b}=useDisclosure(),{onOpen:h}=useAsyncModal(qr),S=useCallback((w,R,A)=>{t?.(w,R,A),h({params:{event:w,market:R,initialOutcome:A,onInsufficientBalance:i}});},[t,h,i]),x=useCallback(w=>{c(w);},[]),y=useCallback(w=>{u(R=>({...R,sortPreset:w}));},[]),v=useCallback(w=>{u(R=>({...R,sortAsc:w}));},[]),k=useCallback(w=>{u(w);},[]),P=useMemo(()=>_i[m.sortPreset].sort_by,[m.sortPreset]),M=useMemo(()=>bn(m,s),[m,s]),N=useMemo(()=>jsx(Ii,{sortPreset:m.sortPreset,onSortChange:y,sortAsc:m.sortAsc,onSortAscChange:v,onFilterPress:g,filterCount:M}),[m.sortPreset,m.sortAsc,M,y,v,g]);return jsxs("div",{style:{minHeight:"100vh",position:"relative",width:"100%",maxWidth:1680,margin:"0 auto"},children:[jsx("div",{style:{position:"sticky",top:0,zIndex:40,background:"rgba(10,10,11,0.8)",backdropFilter:"blur(24px)",WebkitBackdropFilter:"blur(24px)",borderBottom:"1px solid var(--color-border-subtle)"},children:jsx(gi,{onSelect:x,trailing:N})}),jsxs("div",{style:{padding:"12px 8px 80px"},children:[jsx(Oi,{isOpen:f,onClose:b,value:m,onChange:k,enableKalshi:s}),jsx($i,{tagSlugSelection:d,lang:a,sort_by:P,sort_asc:m.sortAsc,source:m.source,timeRemaining:m.timeRemaining,minVolume:m.minVolume,minLiquidity:m.minLiquidity,onSelect:e,onSelectOutcome:S,getEventHref:r,LinkComponent:o,onHover:n,marketDataCapability:l,getMarketDataEvent:p})]}),jsx(To,{})]})}function Qa(e){return formatAmountInUsd(e)}var pm=[{key:"total_events",labelKey:"predict.events.stats.totalEvents",format:e=>formatAmount(e),valueColor:"#c7ff2e",gradientFrom:"rgba(199,255,46,0.18)",gradientTo:"rgba(199,255,46,0.04)"},{key:"total_volume_24h",labelKey:"predict.events.stats.volume24h",format:Qa,valueColor:"#f76816",gradientFrom:"rgba(247,104,22,0.18)",gradientTo:"rgba(247,104,22,0.04)"},{key:"avg_liquidity",labelKey:"predict.events.stats.avgLiquidity",format:Qa,valueColor:"#17c964",gradientFrom:"rgba(23,201,100,0.18)",gradientTo:"rgba(23,201,100,0.04)"},{key:"active_sources",labelKey:"predict.events.stats.activeSources",format:e=>formatAmount(e),valueColor:"#f5a524",gradientFrom:"rgba(245,165,36,0.18)",gradientTo:"rgba(245,165,36,0.04)"}];function mm({stats:e}){let{t}=useTranslation();return jsxs(Fragment,{children:[jsx("style",{children:`
37
37
  @keyframes evt-live-ping{75%,100%{transform:scale(2.2);opacity:0}}
38
38
  @keyframes evt-live-breathe{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.85)}}
39
39
  @keyframes evtHeroTitleEnter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@@ -71,11 +71,11 @@ import {createContext,memo,useRef,forwardRef,useState,useImperativeHandle,useMem
71
71
  .evt-stat-label{font-size:11px;line-height:16px;min-height:16px;white-space:nowrap}
72
72
  @media(min-width:640px){.evt-stat-label{font-size:12px;line-height:18px;min-height:18px}}
73
73
  `}),jsxs("div",{className:"evt-hero-outer",children:[jsxs("div",{className:"evt-hero-left",style:{minWidth:0,flex:1,animation:"evtHeroTitleEnter 0.5s cubic-bezier(0.34,1.56,0.64,1) both"},children:[jsx("div",{className:"evt-hero-live",style:{marginBottom:16},children:jsxs("div",{className:"inline-flex items-center",style:{gap:8,borderRadius:9999,border:"1px solid rgba(63,63,70,0.5)",background:"hsl(var(--heroui-content3) / 0.6)",padding:"6px 12px",backdropFilter:"blur(8px)",WebkitBackdropFilter:"blur(8px)"},children:[jsxs("span",{style:{position:"relative",display:"flex",width:8,height:8},children:[jsx("span",{style:{position:"absolute",display:"inline-flex",width:"100%",height:"100%",borderRadius:9999,background:"#00d492",opacity:.75,animation:"evt-live-ping 1.2s cubic-bezier(0,0,0.2,1) infinite"}}),jsx("span",{style:{position:"relative",display:"inline-flex",width:8,height:8,borderRadius:9999,background:"#00bc7d",animation:"evt-live-breathe 2.4s ease-in-out infinite"}})]}),jsx("span",{style:{fontSize:12,fontWeight:500,color:"var(--color-text-primary)",letterSpacing:"0.025em"},children:t("predict.events.liveBadge")})]})}),jsxs("h1",{className:"evt-hero-title",style:{fontFamily:"var(--font-dm-sans, 'DM Sans', sans-serif)",fontWeight:700,letterSpacing:"-1.2px",lineHeight:1.2,color:"#fff",margin:"0 0 14px"},children:[jsxs("span",{style:{color:"#fff"},children:[t("predict.events.titlePrefix")," "]}),jsx("span",{style:{backgroundImage:"linear-gradient(to right, #c7ff2e, #a0e515, #17c964)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent",backgroundClip:"text"},children:t("predict.events.titleHighlight")})]}),jsx("p",{className:"evt-hero-subtitle evt-hero-subtitle-text",style:{lineHeight:1.6,color:"var(--color-text-muted)",maxWidth:460},children:String(t("predict.events.heroSubtitle")).split(`
74
- `).map((r,o)=>jsxs("span",{children:[o>0&&jsx("br",{className:"hidden sm:block"}),r,o===0?" ":""]},o))})]}),jsx("div",{className:"evt-stat-grid",style:e?{animation:"evtStatsEnter 0.5s cubic-bezier(0.34,1.56,0.64,1) both",animationDelay:"0.1s"}:{},children:pm.map((r,o)=>jsxs("div",{style:{padding:"14px 16px",background:e?`linear-gradient(to bottom, ${r.gradientFrom}, ${r.gradientTo})`:"hsl(var(--heroui-foreground) / 0.02)",borderRight:o%2===0?"1px solid var(--color-border-subtle)":"none",borderBottom:o<2?"1px solid var(--color-border-subtle)":"none",...e?{animation:"evtStatCardEnter 0.45s cubic-bezier(0.34,1.56,0.64,1) both",animationDelay:`${150+o*60}ms`}:{}},children:[jsx("div",{className:"evt-stat-val",style:{fontWeight:700,fontVariantNumeric:"tabular-nums",color:e?r.valueColor:"transparent",display:"flex",alignItems:"center"},children:e?r.format(e[r.key]):jsx("div",{style:{height:16,width:56,borderRadius:4,background:"hsl(var(--heroui-foreground) / 0.06)",animation:"evtStatCardEnter 0.6s ease-out both",animationDelay:`${o*80}ms`}})}),jsx("div",{className:"evt-stat-label",style:{fontWeight:500,color:e?"var(--color-text-muted)":"transparent",marginTop:2,display:"flex",alignItems:"center"},children:e?t(r.labelKey):jsx("div",{style:{height:10,width:64,borderRadius:4,background:"hsl(var(--heroui-foreground) / 0.04)",animation:"evtStatCardEnter 0.6s ease-out both",animationDelay:`${50+o*80}ms`}})})]},r.key))})]})]})}function ji({event:e,market:t,position:r,onSuccess:o,onCancel:n}){let{t:i,i18n:s}=useTranslation(),{mutateAsync:a}=useRedeemPosition(),{start:l}=useTradeResultConfirmation(),{evmAddress:p}=cr(),d=useWallets(),[c,m]=useState("idle"),[u,f]=useState(null),g=t.provider_meta?.["polymarket.conditionId"],b=t.provider_meta?.["polymarket.negRisk"]??false,h=p??"",S=useMemo(()=>Gr(i),[s,i]),x=useMemo(()=>d.find(G=>G.chainNamespace===ChainNamespace.EVM&&G.isConnected),[d]),y=Za(r.side,t.outcomes),k=t.outcomes?.[y]?.label??r.side,P=t.result!=null?Za(t.result,t.outcomes):-1,N=(P>=0?t.outcomes?.[P]:void 0)?.label??t.result??"",w=t.result!=null?y===P:true,R=useMemo(()=>w?r.size:0,[w,r.size]),A=useCallback(async()=>{if(!(!g||!h||!x)){m("pending"),f(null);try{let G=await x.getEip1193Provider();if(!G)throw new Error("EIP-1193 provider unavailable");await a({wallet_address:h,condition_id:g,neg_risk:b,signMessage:async W=>await G.request({method:"personal_sign",params:[W,h]}),signTypedData:async W=>await G.request({method:"eth_signTypedData_v4",params:[h,JSON.stringify(W)]})}),m("confirming");let U=Mr({messages:S});U.submitted(),await l({source:r.source,user:h,marketSlug:r.market?.slug??t.slug,eventSlug:r.event?.slug??e?.slug,expectation:"redeem",expectedPayout:R})==="confirmed"?(m("success"),U.completed()):(m("delayed"),U.delayed()),o?.();}catch(G){m("error"),f(G instanceof Error?G.message:i("predict.redeem.error"));}}},[g,h,b,x,a,S,l,r.source,r.market?.slug,r.event?.slug,t.slug,e?.slug,R,o,i]),X=useAuthCallback(A),L=c==="idle"&&!!g&&!!h&&!!x&&r.redeemable;return jsxs("div",{className:"flex flex-col gap-4 p-4",children:[jsx("div",{className:"text-base font-medium text-text-primary",children:e?.title??t.question}),jsxs("div",{className:"flex flex-col gap-2 rounded-xl bg-surface-strong/40 p-3",children:[jsx(Nn,{label:i("predict.positions.side"),value:k,valueClassName:w?"text-success":"text-danger"}),t.result!=null&&jsx(Nn,{label:i("predict.redeem.result"),value:N,valueClassName:"text-success"}),jsx(Nn,{label:i("predict.positions.size"),value:r.size.toFixed(2)}),jsx(Nn,{label:i("predict.redeem.expectedPayout"),value:`$${R.toFixed(2)}`,valueClassName:R>0?"text-success":"text-text-secondary"})]}),!w&&R===0&&jsx("p",{className:"text-sm text-text-muted",children:i("predict.redeem.noWinnings")}),c==="error"&&u&&jsx("p",{className:"text-sm text-danger",children:u}),c==="success"&&jsx("p",{className:"text-sm text-success",children:i("predict.redeem.success")}),c==="delayed"&&jsx("p",{className:"text-sm text-text-secondary",children:i("predict.trade.resultDelayed",{defaultValue:"Your trade was submitted successfully. Confirmation is taking a little longer."})}),jsxs("div",{className:"flex flex-col gap-2",children:[c!=="success"&&c!=="delayed"&&jsx(Button,{color:"success",className:"w-full h-12 rounded-xl text-sm font-semibold",isDisabled:!L,isLoading:c==="pending"||c==="confirming",onPress:X,spinner:jsx(Spinner,{size:"sm",color:"current"}),children:i("predict.redeem.confirm")}),n&&c!=="success"&&c!=="delayed"&&jsx("button",{type:"button",onClick:n,className:"w-full h-12 rounded-xl text-sm font-medium text-text-secondary hover:text-text-primary hover:bg-surface-strong/50 transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:i("common.cancel")}),(c==="success"||c==="delayed")&&n&&jsx(Button,{className:"w-full h-12 rounded-xl text-sm font-medium",onPress:n,children:i("common.ok")})]})]})}function Nn({label:e,value:t,valueClassName:r="text-text-primary"}){return jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{className:"text-sm text-text-secondary",children:e}),jsx("span",{className:`text-sm font-medium ${r}`,children:t})]})}function Za(e,t){let r=e.toLowerCase();if(r==="yes")return 0;if(r==="no"||!t)return 1;let o=t.findIndex(n=>n.label.toLowerCase()===r);return o>=0?o:1}var tl="predict-redeem";function Gi({id:e=tl}){return jsx(AsyncModal,{id:e,children:t=>jsx(Tm,{...t})})}function Tm({params:e,isOpen:t,onOpenChange:r}){let{t:o}=useTranslation(),{isMobile:n}=useScreen();return e?jsx(StyledModal,{isOpen:t,onOpenChange:r,size:n?"lg":"md",backdrop:"opaque",hideCloseButton:true,classNames:{base:THEMED_MODAL_BASE_CLASS,body:"!p-0"},children:jsx(ModalContent,{children:jsxs("div",{className:n?"":"p-2",children:[jsxs("div",{className:"px-4 pt-4 pb-1",children:[jsx("h3",{className:"text-lg font-semibold text-text-primary",children:o("predict.redeem.title")}),jsx("p",{className:"text-sm text-text-secondary mt-1",children:o("predict.redeem.description")})]}),jsx(ji,{event:e.event,market:e.market,position:e.position,onSuccess:()=>{setTimeout(()=>r(false),1500);},onCancel:()=>r(false)})]})})}):null}function Qi(e){return e?.trim().toLowerCase()??""}function qi(e,t){let r=e.provider_meta?.[t];return typeof r=="string"?r:""}function il(e,t){return !!(e&&t&&e.trim().toLowerCase().includes(t))}function sf(e,t){let r=Qi(e.side);if(r==="yes"||r==="no")return r;if(r==="over"||r==="odd")return "yes";if(r==="under"||r==="even")return "no";let o=[t.outcomes?.[0]?.label,qi(t,"polymarket.groupItemTitle"),qi(t,"polymarket.groupItemTitleTrans"),qi(t,"polymarket.group_item_title_trans")],n=[t.outcomes?.[1]?.label];return o.some(i=>il(i,r))?"yes":n.some(i=>il(i,r))?"no":null}function Xi({market:e,initialOutcome:t="yes",initialPositionSide:r,slippageBps:o=100,onSuccess:n}){let{t:i,i18n:s}=useTranslation(),a=useRef(n);a.current=n;let{status:l}=useAuth(),p=useWallets(),d=usePredictClient(),c=useContext(PolymarketContext),m=useQueryClient(),{start:u}=useTradeResultConfirmation(),f=e.source,g=f==="polymarket",b=p.find(T=>T.chainNamespace===ChainNamespace.SOLANA&&T.isConnected),h=p.find(T=>T.chainNamespace===ChainNamespace.EVM&&T.isConnected&&"switchChain"in T),S=l==="authenticated",x=b?.address,y=h?.address,[v,k]=useState(t),[P,M]=useState("market"),[N,w]=useState(NaN),[R,A]=useState(NaN),[X,L]=useState(false),[G,U]=useState(false),[oe,W]=useState(null),[te,ne]=useState(null),[se,he]=useState(false),[Pe,pt]=useState(false),[Ve,Be]=useState("1h"),[E,st]=useState(30),[He,ve]=useState("minutes"),at=useMemo(()=>Gr(i),[s,i]),we=true,Ue=useCallback(async(T,Re)=>{let Le=Mr({messages:at});Le.submitted(),await u({source:f,user:f==="kalshi"?x:y,kalshiUser:we?x:void 0,polymarketUser:y,marketSlug:e.slug,eventSlug:e.event_slug,expectation:T,getOrdersHeaders:Re})==="confirmed"?Le.completed():Le.delayed();},[u,we,y,e.event_slug,e.slug,f,at,x]),qe=useMemo(()=>{if(f!=="polymarket")return;let T=e.provider_meta?.["polymarket.clobTokenIds"];return T?(typeof T=="string"?JSON.parse(T):T)[v==="yes"?0:1]:void 0},[f,e.provider_meta,v]),{data:C,isLoading:O}=useTickSize(qe),z=normalizePolymarketTickSize(C?.minimum_tick_size),{data:Z,isLoading:me}=useFeeRate(qe),Ne=String(Z?.base_fee??0),{data:lt}=useRebateConfig(),ct=lt?.builder_enabled&&lt.builder_code?lt.builder_code:void 0,kt=false,Qe=null,Yt=false,We,et,xe;try{let T=cr();we=T.enableKalshi,kt=T.kalshiKycVerified,Qe=T.kalshiKycUrl,Yt=T.polymarketSetupVerified,We=T.polymarketSafeAddress,et=T.polymarketWalletKind,xe=T.polymarketWalletAddress;}catch{}let mt=f==="kalshi"&&!kt,St=f==="polymarket"&&!Yt,Me=useCallback(async()=>{if(!h||!c)return null;let T=await h.getEip1193Provider();if(!T)return null;let Re=et==="deposit"&&!!xe,Le=!Re&&!!We,ze={address:h.address,signatureType:Re?3:Le?2:0,signTypedData:async(vt,Zt,Wt,$e)=>{let ar=[];"name"in vt&&ar.push({name:"name",type:"string"}),"version"in vt&&ar.push({name:"version",type:"string"}),"chainId"in vt&&ar.push({name:"chainId",type:"uint256"}),"verifyingContract"in vt&&ar.push({name:"verifyingContract",type:"address"}),"salt"in vt&&ar.push({name:"salt",type:"bytes32"});let on={EIP712Domain:ar,...Zt};return await T.request({method:"eth_signTypedData_v4",params:[h.address,JSON.stringify({domain:vt,types:on,primaryType:Wt,message:$e})]})}};return c.credentials??await c.authenticate(ze)},[We,et,xe,h,c]),{data:tt}=useRealtimeOrderbook({slug:e.slug,source:f,outcome:v},{enabled:e.status==="open"}),Ce=useMemo(()=>{let T=pickBestBid(tt,v);if(T!=null&&T>0)return T;let Re=v==="yes"?0:1,Le=e.outcomes[Re];return Le?.best_bid??Le?.price??.5},[tt,e.outcomes,v]),Lt=f==="kalshi"?x??"":y??"",{data:I,isLoading:_e}=usePositionsMulti({kalshi_user:f==="kalshi"?Lt:void 0,polymarket_user:f==="polymarket"?Lt:void 0},{enabled:!!Lt,refetchInterval:3e4}),Xe=Qi(r),mo=r?.trim(),B=useMemo(()=>I?I.positions.find(T=>T.market?.slug!==e.slug?false:Xe?Qi(T.side)===Xe:sf(T,e)===v)??null:null,[I,e,v,Xe]),Ie=mo||B?.side||v,Pt=useCallback(async()=>{let T=await Me();return T?await buildPolymarketL2Headers(T.address,{apiKey:T.apiKey,secret:T.secret,passphrase:T.passphrase,method:"GET",requestPath:"/data/orders",body:""}):{}},[Me]),{data:Ft,isLoading:fo}=useAvailableShares({source:f,user:Lt,market:e.slug,side:Ie},f==="polymarket"?{getHeaders:Pt}:void 0,{enabled:!!Lt&&!!e.slug,refetchOnMount:"always"}),ni=e.provider_meta?.["dflow.yesMint"]??"",ii=e.provider_meta?.["dflow.noMint"]??"",qt=SOLANA_TOKENS.stablecoins.USDC.address,Ir=e.provider_meta?.["dflow.collateralMint"]||"",si=v==="yes"?ni:ii,ft=useMemo(()=>f==="polymarket"?getPolymarketSharesPrecision(z):Ft?.precision??0,[f,z,Ft?.precision]),Ot=Ft?.active_order_shares??0,Dr=f==="polymarket"&&!!B?.size&&(Ft?.total_shares??0)<=0&&(Ft?.available_shares??0)<=0,go=Dr?B?.size??0:0,Ar=Dr?go:Ft?.total_shares??0,sr=Dr?Math.max(0,go-Ot):Ft?.available_shares??0,ai=fo||_e,en=B?.market?.provider_meta,Fr=en?.["dflow.outcomeMint"]||si,Qt=en?.["dflow.collateralMint"]||Ir,vr=Fr,xr=Qt||qt,br=useMemo(()=>isNaN(N)||N<=0?"0":String(Math.round(N*1e6)),[N]),ho=f==="kalshi"&&!!vr&&!!xr&&!!x&&br!=="0",{refetch:vo}=useDFlowQuote({inputMint:vr,outputMint:xr,amount:br,userPublicKey:x??"",slippageBps:100},{enabled:ho}),Br=useMemo(()=>isNaN(N)||N<=0?0:N,[N]),_t=useMemo(()=>walkOrderbook({orderbook:tt,outcome:v,side:"sell",sharesNeeded:Br,slippageBps:o}),[tt,v,Br,o]),D=useMemo(()=>_t.status==="ok"&&_t.worstPrice!=null&&_t.worstPrice>0?_t.worstPrice:Ce,[_t,Ce]),De=useMemo(()=>P==="limit"&&g&&!isNaN(R)?R:D,[P,g,R,D]),Te=useMemo(()=>isNaN(N)||N<=0?0:N*De,[N,De]),It=useMemo(()=>f!=="polymarket"?0:Mi({grossReturn:Te,pricePerShare:De,feeRateBps:Number(Ne)}),[f,Te,De,Ne]),xo=useMemo(()=>Math.max(0,Te-It),[Te,It]),Xt=useCallback(T=>{k(T),A(NaN),w(NaN),U(false);},[]);useEffect(()=>{Xt(t);},[t,Xt]);let Jt=useCallback(T=>{M(T);},[]);useEffect(()=>{P==="limit"&&A(Math.round(Ce*1e4)/1e4);},[P,v,Ce]);let gt=useCallback(T=>{if(U(false),isNaN(T)){w(NaN);return}w(be(Math.max(0,T),ft));},[ft]),li=useCallback(()=>{U(true),w(be(sr,ft));},[sr,ft]),tn=useCallback(T=>{if(isNaN(T)){A(NaN);return}A(Math.round(T*1e4)/1e4);},[]),Ut=useCallback(()=>{w(NaN),A(NaN),M("market"),U(false),pt(false),Be("1h"),st(30),ve("minutes");},[]),Hr=useMemo(()=>{let T=[];return isNaN(N)||N<=0?T.push(i("predict.trade.minQuantity",{amount:yo})):N<yo&&T.push(i("predict.trade.minQuantity",{amount:yo})),e.status!=="open"&&T.push(i("predict.trade.marketNotActive")),!isNaN(N)&&N>0&&!G&&N>sr&&T.push(i("predict.trade.insufficientSharesDetail",{total:be(Ar,ft).toFixed(ft),active:be(Ot,ft).toFixed(ft),available:be(sr,ft).toFixed(ft)})),P==="limit"&&g&&(isNaN(R)||R<.01||R>.99)&&T.push(i("predict.trade.limitPriceRange")),P==="limit"&&g&&Pe&&Ve==="custom"&&(isNaN(E)||E<=0)&&T.push(i("predict.trade.expiration.invalidDate")),f==="polymarket"&&P==="market"&&!isNaN(N)&&N>0&&(_t.status==="insufficient_liquidity"?T.push(i("predict.trade.insufficientLiquidity",{available:be(_t.totalAvailable,2)})):_t.status==="exceeds_slippage"&&T.push(i("predict.trade.priceImpactTooHigh",{impact:(_t.priceImpactBps/100).toFixed(2),slippage:(o/100).toFixed(2)}))),{isValid:T.length===0,errors:T}},[N,e.status,sr,Ar,Ot,G,P,g,R,Pe,Ve,E,ft,f,_t,o,i]),{mutateAsync:Ur}=useDFlowSubmit(),{data:yr}=useOrder({id:oe??"",source:f},{enabled:!!oe}),rn=useCallback(async()=>{if(!te||!x||!b)return;let{cashAmount:T,collateral:Re}=te;ne(null);try{let ze=(await d.createDFlowQuote({inputMint:Re,outputMint:qt,amount:T,userPublicKey:x,slippageBps:100}))?.transaction;if(!ze)return;let vt=Uint8Array.from(atob(ze),Wt=>Wt.charCodeAt(0)),Zt=await b.signTransaction(vt);await Ur({signedTransaction:btoa(String.fromCharCode(...Zt)),orderContext:{user_public_key:x,input_mint:Re,output_mint:qt,amount:T,price:"1",side:"SELL",outcome:"",market_slug:"",slippage_bps:100}});}catch{}},[te,x,b,d,Ur,qt]),kr=useCallback(()=>{m.invalidateQueries({queryKey:["predict","available-shares"]});},[m]);useEffect(()=>{if(!yr||!oe)return;let{status:T}=yr;T==="closed"?(W(null),te?rn().finally(()=>{L(false),Ue("sell-market"),kr(),Ut(),a.current?.();}):(L(false),Ue("sell-market"),kr(),Ut(),a.current?.())):(T==="failed"||T==="expired")&&(L(false),W(null),ne(null),toast.error(i("predict.trade.submitError")));},[yr,oe,te,rn,Ue,kr,Ut,i]);let Wr=useCallback(async()=>{if(!x||!b)return;if(!vr||!xr){toast.error("Missing token mint addresses"),L(false);return}if(!kt){he(true),L(false);return}let Le=(await vo()).data,ze=Le?.transaction;if(!ze){toast.error(i("predict.trade.submitError")),L(false);return}if(Qt&&Qt!==qt){let $e=String(Le?.outAmount??"");$e&&$e!=="0"&&ne({cashAmount:$e,collateral:Qt});}let vt=Uint8Array.from(atob(ze),$e=>$e.charCodeAt(0)),Zt=await b.signTransaction(vt),Wt=await Ur({signedTransaction:btoa(String.fromCharCode(...Zt)),orderContext:{user_public_key:x,input_mint:vr,output_mint:xr,amount:br,price:String(Ce),side:"SELL",outcome:v==="yes"?"YES":"NO",market_slug:e.slug,slippage_bps:100}});W(Wt.signature);},[x,b,vo,Ur,vr,xr,br,Ce,v,e.slug,Qt,qt,i,kt]),zr=useCallback(async()=>{if(!h||!c)return;let T=h.chain,Re=T!==Chain.POLYGON;Re&&await h.switchChain(Chain.POLYGON);try{let Le=await h.getEip1193Provider();if(!Le){toast.error(i("predict.trade.submitError")),L(!1);return}let ze=et==="deposit"&&!!xe,vt=!ze&&!!We,Zt=ze?xe:We,Wt={address:h.address,signatureType:ze?3:vt?2:0,signTypedData:async(zt,sn,ui,pi)=>{let $r=[];"name"in zt&&$r.push({name:"name",type:"string"}),"version"in zt&&$r.push({name:"version",type:"string"}),"chainId"in zt&&$r.push({name:"chainId",type:"uint256"}),"verifyingContract"in zt&&$r.push({name:"verifyingContract",type:"address"}),"salt"in zt&&$r.push({name:"salt",type:"bytes32"});let xd={EIP712Domain:$r,...sn};return await Le.request({method:"eth_signTypedData_v4",params:[h.address,JSON.stringify({domain:zt,types:xd,primaryType:ui,message:pi})]})}},$e=await Me();if(!$e){toast.error(i("predict.trade.submitError")),L(!1);return}let ar=v==="yes"?0:1,on="",nn=e.provider_meta?.["polymarket.clobTokenIds"];nn&&(on=(typeof nn=="string"?JSON.parse(nn):nn)[ar]??"");let ea=e.provider_meta?.["polymarket.negRisk"]??!1,hd=P==="limit"&&!isNaN(R)?R:D,vd=Po(hd,z),ci={tokenId:on,price:vd,size:N,side:"SELL",orderType:P==="limit"?Pe?"GTD":"GTC":"FOK",tickSize:z,negRisk:ea,...Zt&&{funderAddress:Zt},...ct&&{builderCode:ct},...P==="limit"&&Pe&&{expiration:So(Ve,E,He)}},di;if(ze)di=await buildSignedV2OrderPayload({signer:Wt,depositWalletAddress:Zt,input:ci,owner:$e.apiKey});else {let zt=buildCtfExchangeDomain(ea),sn=buildOrderMessage({...ci,signerAddress:Wt.address,signatureType:Wt.signatureType,feeRateBps:Ne}),ui=await Wt.signTypedData(zt,CTF_ORDER_TYPES,"Order",sn),pi=buildSignedOrder(sn,ui,ci.orderType);di=buildClobPayload(pi,$e.apiKey);}await d.executePolymarketOrder({payload:di,l2_api_key:$e.apiKey,l2_secret:$e.secret,l2_passphrase:$e.passphrase,signer_address:$e.address,owner:$e.apiKey}),kr(),Ue(P==="limit"?"sell-limit":"sell-market",async()=>await buildPolymarketL2Headers($e.address,{apiKey:$e.apiKey,secret:$e.secret,passphrase:$e.passphrase,method:"GET",requestPath:"/data/orders"})),Ut(),L(!1),a.current?.();}finally{Re&&T&&h.switchChain(T).catch(()=>{});}},[h,c,Me,v,e,P,Ue,R,D,N,d,kr,Pe,Ve,E,He,Ut,i,z,Ne,We,et,xe,ct]),Dt=useCallback(async()=>{if(!(!Hr.isValid||!S)){L(true),W(null),he(false);try{f==="kalshi"?await Wr():await zr();}catch(T){let Re=T instanceof Error?T.message:"",Le=f==="polymarket"&&Re?No(Re,i,"sell"):Re||void 0;toast.error(Le||i("predict.trade.submitError")),L(false);}}},[Hr.isValid,S,f,Wr,zr,i]);return {outcome:v,orderType:P,quantity:N,limitPrice:R,shares:Br,effectivePrice:De,grossReturn:Te,estimatedFee:It,estimatedReturn:xo,pricePerShare:Ce,isMarketDataLoading:f==="polymarket"&&(me||O),isSubmitting:X,authStatus:l,validation:Hr,supportsLimitOrder:g,kycRequired:se,needsKyc:mt,needsSetup:St,kycUrl:Qe,totalShares:Ar,activeOrderShares:Ot,availableShares:sr,isAvailableLoading:ai,isSellAll:G,precision:ft,expirationEnabled:Pe,expirationPreset:Ve,customDuration:E,customDurationUnit:He,setOutcome:Xt,setOrderType:Jt,setQuantity:gt,setLimitPrice:tn,setSellAll:li,setExpirationEnabled:pt,setExpirationPreset:Be,setCustomDuration:st,setCustomDurationUnit:ve,submit:Dt}}var hf=["5m","1h","12h","24h","eod","custom"],vf={"5m":"predict.trade.expiration.5m","1h":"predict.trade.expiration.1h","12h":"predict.trade.expiration.12h","24h":"predict.trade.expiration.24h",eod:"predict.trade.expiration.eod",custom:"predict.trade.expiration.custom"},xf=["minutes","hours","days"],bf={minutes:"predict.trade.expiration.minutes",hours:"predict.trade.expiration.hours",days:"predict.trade.expiration.days"},yf={maximumFractionDigits:0},Oo="-";function es({event:e,market:t,variant:r="bordered",outcome:o,orderType:n,quantity:i,limitPrice:s,effectivePrice:a,grossReturn:l,estimatedFee:p,estimatedReturn:d,isMarketDataLoading:c,isSubmitting:m,authStatus:u,isValid:f,validationErrors:g,supportsLimitOrder:b,kycRequired:h,needsKyc:S,needsSetup:x,onSetupRequired:y,kycUrl:v,totalShares:k,activeOrderShares:P,availableShares:M,isAvailableLoading:N,precision:w,expirationEnabled:R,expirationPreset:A,customDuration:X,customDurationUnit:L,oddsFormatter:G,outcomeLabels:U,onOutcomeChange:oe,onOrderTypeChange:W,onQuantityChange:te,onLimitPriceChange:ne,onSellAll:se,onExpirationEnabledChange:he,onExpirationPresetChange:Pe,onCustomDurationChange:pt,onCustomDurationUnitChange:Ve,onSubmit:Be}){let{t:E}=useTranslation(),[st,He]=useState(false),[ve,at]=useState(true),we=useDisclosure(),[Ue,qe]=useState(""),C=useRef(false);useEffect(()=>{C.current||qe(isNaN(i)?"":String(i));},[i]);let[O,z]=useState(""),Z=useRef(false);useEffect(()=>{Z.current||(isNaN(s)?z(""):z(String(parseFloat((s*100).toFixed(2)))));},[s]);let me=useCallback(I=>{if(I!==""&&!/^\d*\.?\d{0,2}$/.test(I))return;if(z(I),I===""||I==="."){ne(NaN);return}let Xe=parseFloat(I);isNaN(Xe)||ne(Xe/100);},[ne]),Ne=useCallback(I=>{let _e=new RegExp(`^\\d*\\.?\\d{0,${w}}$`);if(I!==""&&!_e.test(I))return;if(qe(I),He(false),I===""||I==="."){te(NaN);return}let Xe=parseFloat(I);isNaN(Xe)||te(Xe);},[te,w]);useEffect(()=>{h&&!we.isOpen&&we.onOpen();},[h,we]);let lt=useMemo(()=>{let I=o==="yes"?t.yesBid:t.noBid;return I!=null?parseFloat((Number(I)*100).toFixed(2)):null},[o,t]),ct=o==="yes"?t.yesBid:t.noBid,kt=ct!=null&&G?G(Number(ct)):lt!=null?`${lt} \xA2`:null,Qe=Number.isFinite(a)?parseFloat((a*100).toFixed(2)):null,Yt=Number.isFinite(a)&&G?G(a):Qe!=null?`${Qe} \xA2`:null,We=!isNaN(i)&&i>0,et=We&&i>0?d/i:0,xe=et>0&&G?G(et):et>0?`${parseFloat((et*100).toFixed(2))} \xA2`:Oo,mt=u==="authenticated",St=u==="authenticating"||u==="deauthenticating",Me=mt&&(S||x),tt=useCallback(I=>U?.[I]??E(I==="yes"?"predict.trade.yes":"predict.trade.no"),[U,E]),Ce=useMemo(()=>{if(St)return E("predict.trade.checkingLogin");if(!mt)return E("predict.trade.loginToTrade");if(S)return E("predict.trade.kycRequired");if(x)return E("predict.trade.setupRequired");if(N)return E("predict.trade.loadingBalance");if(c)return E("predict.trade.loadingMarketData");if(m)return E("predict.trade.submitting");if(h)return E("predict.trade.kycRequired");if(!We)return E("predict.trade.enterAmount");let I=tt(o);return `${E("predict.trade.sell")} ${I}`},[St,mt,S,x,N,c,m,h,We,o,tt,E]),Lt=()=>{if(!mt){He(false),Be();return}if(S){we.onOpen();return}if(x&&y){He(false),y();return}if(h){we.onOpen();return}if(!f){He(true);return}He(false),Be();};return jsxs(Fragment,{children:[jsxs("div",{className:"flex w-full flex-col gap-y-4 p-4",style:r==="bordered"?{borderRadius:14,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content2) / 0.4)",transition:"border-color 0.2s"}:void 0,onMouseEnter:I=>{r==="bordered"&&(I.currentTarget.style.borderColor="hsl(var(--heroui-content4) / 0.8)");},onMouseLeave:I=>{r==="bordered"&&(I.currentTarget.style.borderColor="hsl(var(--heroui-content3) / 0.6)");},children:[e&&jsxs("div",{className:"flex items-center gap-x-3",children:[e.imageUrl&&jsx("img",{src:e.imageUrl,alt:e.title,className:"h-10 w-10 shrink-0 rounded-lg object-cover"}),jsxs("div",{className:"flex min-w-0 flex-col gap-y-0.5",children:[jsx("span",{className:"text-sm text-text-muted leading-tight line-clamp-1",children:e.title}),jsxs("span",{className:"text-base font-semibold leading-tight line-clamp-1",children:[jsx("span",{className:"text-foreground",children:t.yesSubTitle}),jsx("span",{className:"text-foreground",children:" \xB7 "}),jsxs("span",{className:"text-negative",children:[E("predict.trade.sell")," ",tt(o)]})]})]})]}),jsxs("div",{className:"flex items-center justify-between",children:[b?jsxs(Tabs,{variant:"underlined",selectedKey:n,onSelectionChange:I=>W(I),classNames:{tabList:"gap-x-4",tab:"px-0"},children:[jsx(Tab,{title:E("predict.trade.market")},"market"),jsx(Tab,{title:E("predict.trade.limit")},"limit")]}):jsx("span",{className:"text-sm font-medium text-foreground",children:E("predict.trade.market")}),n==="limit"&&b?jsx(StyledInput,{"aria-label":E("predict.trade.limitPrice"),placeholder:"50",size:"sm",radius:"none",inputMode:"decimal",value:O,onChange:I=>me(I.target.value),onFocus:()=>{Z.current=true;},onBlur:()=>{Z.current=false,isNaN(s)?z(""):z(String(parseFloat((s*100).toFixed(2))));},endContent:jsx("span",{className:"text-xl font-bold tabular-nums text-foreground",children:"\xA2"}),classNames:{base:"w-28",inputWrapper:"bg-content2 data-[hover=true]:bg-content2 group-data-[focus=true]:bg-content2 rounded-lg px-2 h-9 min-h-9",input:"text-xl font-bold tabular-nums text-right"}}):kt!=null&&jsx("span",{className:"text-xl font-bold tabular-nums",children:kt})]}),jsx("div",{className:"flex gap-x-2",children:["yes","no"].map(I=>{let _e=I==="yes"?t.yesBid:t.noBid;return jsx("div",{className:"flex flex-1 flex-col gap-y-1",children:jsxs("button",{type:"button",onClick:()=>oe(I),className:`w-full rounded-lg border py-2 text-sm font-medium transition-colors cursor-pointer ${o===I?"border-negative bg-negative/10 text-negative":"border-default-400 text-foreground hover:border-default-500"}`,children:[jsx("span",{children:tt(I)}),_e!=null&&jsx("span",{className:"ml-1 opacity-70",children:G?G(Number(_e)):`${parseFloat((Number(_e)*100).toFixed(2))}\xA2`})]})},I)})}),jsxs("div",{className:"flex flex-col gap-y-1.5",children:[jsxs("div",{className:"flex items-center justify-between text-xs text-text-muted",children:[jsx("span",{className:"text-sm font-medium text-foreground",children:E("predict.trade.sellContracts")}),jsxs("div",{className:"flex items-center gap-x-2",children:[[25,50].map(I=>{let _e=Math.pow(10,w);return jsxs("button",{type:"button",onClick:()=>{te(Math.floor(M*I/100*_e)/_e);},className:"rounded px-1.5 py-0.5 bg-content2 hover:bg-content3 transition-colors cursor-pointer text-text-muted hover:text-foreground font-medium",children:[I,"%"]},I)}),jsx("button",{type:"button",onClick:se,className:"rounded px-1.5 py-0.5 bg-content2 hover:bg-content3 transition-colors cursor-pointer text-text-muted hover:text-foreground font-medium",children:E("common.all")})]})]}),jsx(StyledInput,{"aria-label":E("predict.trade.sellQuantity"),fullWidth:true,placeholder:"0",radius:"lg",size:"lg",inputMode:"decimal",value:Ue,onChange:I=>Ne(I.target.value),onFocus:()=>{C.current=true;},onBlur:()=>{C.current=false,qe(isNaN(i)?"":String(i));},classNames:{inputWrapper:"bg-content2 data-[hover=true]:bg-content2 group-data-[focus=true]:bg-content2 h-14 min-h-14",input:"text-lg"}}),st&&g.length>0&&jsx("div",{className:"flex flex-col gap-y-0.5",children:g.map(I=>jsx("span",{className:"text-xs text-danger",children:I},I))})]}),jsxs("div",{className:"flex flex-col gap-y-1.5 border-l-2 border-default-300 pl-3 text-sm text-text-muted",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.totalShares")}),jsx("span",{className:"tabular-nums text-foreground",children:N?"\u2013":`${be(k,w).toFixed(w)}${E("predict.trade.sharesUnit")}`})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.activeOrders")}),jsx("span",{className:"tabular-nums text-warning",children:N?"\u2013":P>0?`-${be(P,w).toFixed(w)}${E("predict.trade.sharesUnit")}`:`0${E("predict.trade.sharesUnit")}`})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.availableShares")}),jsx("span",{className:"tabular-nums text-success font-medium",children:N?"\u2013":`${be(M,w).toFixed(w)}${E("predict.trade.sharesUnit")}`})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.estReturn")}),jsx("span",{className:"tabular-nums text-foreground",children:!isNaN(i)&&i>0?`$${d.toFixed(2)}`:"\u2013"})]})]}),jsxs("div",{className:"flex flex-col gap-y-2",children:[jsxs("div",{className:"flex items-center justify-between text-sm",children:[jsxs("button",{type:"button",onClick:()=>at(I=>!I),className:"flex items-center gap-x-1 text-text-muted hover:text-foreground cursor-pointer transition-colors",children:[jsx("span",{children:E("predict.trade.odds")}),jsx(ChevronDownIcon,{className:cn$1("h-3.5 w-3.5 transition-transform",ve&&"rotate-180")})]}),jsx("span",{className:"text-foreground font-medium tabular-nums",children:G&&Number.isFinite(a)?Yt:Qe!=null?E("predict.trade.chance",{percent:Qe}):Oo})]}),ve&&jsxs("div",{className:"flex flex-col gap-y-1.5 border-l-2 border-default-300 pl-3 text-sm text-text-muted",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.numContracts")}),jsx("span",{className:"tabular-nums text-foreground",children:!isNaN(i)&&i>0?Nr(i):Oo})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.totalSize")}),jsx("span",{className:"tabular-nums text-foreground",children:We?`$${l.toFixed(2)}`:Oo})]}),(p??0)>0&&jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.estFee")}),jsx("span",{className:"tabular-nums text-foreground",children:`$${(p??0).toFixed(2)}`})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.estReturnAfterFees")}),jsx("span",{className:"tabular-nums text-foreground",children:We?`$${d.toFixed(2)}`:Oo})]}),(p??0)>0&&jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.effectiveOdds")}),jsx("span",{className:"tabular-nums text-foreground",children:xe})]})]})]}),n==="limit"&&b&&jsxs("div",{className:"flex flex-col gap-y-2",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{className:"text-sm font-medium text-primary",children:E("predict.trade.setExpiration")}),jsx(StyledSwitch,{size:"sm",color:"primary",isSelected:R,onValueChange:he,"aria-label":E("predict.trade.setExpiration")})]}),R&&jsxs(Fragment,{children:[jsx(Select,{"aria-label":E("predict.trade.setExpiration"),selectedKeys:[A],onSelectionChange:I=>{let _e=Array.from(I)[0];_e&&Pe(_e);},size:"sm",radius:"lg",classNames:{trigger:"bg-content2 data-[hover=true]:bg-content2 min-h-10",value:"text-sm"},children:hf.map(I=>jsx(SelectItem,{children:E(vf[I])},I))}),A==="custom"&&jsxs("div",{className:"flex gap-x-2",children:[jsx(StyledNumberInput,{"aria-label":E("predict.trade.durationAmount"),size:"sm",radius:"lg",value:isNaN(X)?void 0:X,onValueChange:pt,minValue:1,step:1,formatOptions:yf,classNames:{base:"flex-1",inputWrapper:"bg-content2 data-[hover=true]:bg-content2 group-data-[focus=true]:bg-content2 min-h-10",input:"text-sm"}}),jsx(Select,{"aria-label":E("predict.trade.durationUnit"),selectedKeys:[L],onSelectionChange:I=>{let _e=Array.from(I)[0];_e&&Ve(_e);},size:"sm",radius:"lg",classNames:{base:"w-32",trigger:"bg-content2 data-[hover=true]:bg-content2 min-h-10",value:"text-sm"},children:xf.map(I=>jsx(SelectItem,{children:E(bf[I])},I))})]})]})]}),jsx(Button,{color:"secondary",fullWidth:true,radius:"lg",size:"lg",isDisabled:St||mt&&!Me&&(N||c||!We||m),isLoading:St||mt&&!Me&&(m||N||c),spinner:jsx(Spinner,{size:"sm",color:"current"}),onPress:Lt,children:Ce})]}),jsx(wo,{isOpen:we.isOpen,onClose:we.onClose,kycUrl:v})]})}function _o({event:e,market:t,variant:r,initialOutcome:o,initialPositionSide:n,chain:i,slippageBps:s,onOutcomeChange:a,onSetupRequired:l,onSuccess:p,oddsFormatter:d,outcomeLabels:c}){let{outcome:m,orderType:u,quantity:f,limitPrice:g,effectivePrice:b,grossReturn:h,estimatedFee:S,estimatedReturn:x,pricePerShare:y,isMarketDataLoading:v,isSubmitting:k,authStatus:P,validation:M,supportsLimitOrder:N,kycRequired:w,needsKyc:R,needsSetup:A,kycUrl:X,totalShares:L,activeOrderShares:G,availableShares:U,isAvailableLoading:oe,precision:W,expirationEnabled:te,expirationPreset:ne,customDuration:se,customDurationUnit:he,setOutcome:Pe,setOrderType:pt,setQuantity:Ve,setLimitPrice:Be,setSellAll:E,setExpirationEnabled:st,setExpirationPreset:He,setCustomDuration:ve,setCustomDurationUnit:at,submit:we}=Xi({market:t,initialOutcome:o,initialPositionSide:n,slippageBps:s,onSuccess:p}),Ue=useAuthCallback(we),qe=useCallback(z=>{Pe(z),a?.(z);},[Pe,a]),C=useMemo(()=>e?un(e):void 0,[e]),O=useMemo(()=>pn(t,{yesBid:m==="yes"?y:void 0,noBid:m==="no"?y:void 0}),[t,m,y]);return jsx(es,{event:C,market:O,variant:r,outcome:m,orderType:u,quantity:f,limitPrice:g,effectivePrice:b,grossReturn:h,estimatedFee:S,estimatedReturn:x,isMarketDataLoading:v,isSubmitting:k,authStatus:P,isValid:M.isValid,validationErrors:M.errors,supportsLimitOrder:N,kycRequired:w,needsKyc:R,needsSetup:A,onSetupRequired:l,kycUrl:X,totalShares:L,activeOrderShares:G,availableShares:U,isAvailableLoading:oe,precision:W,expirationEnabled:te,expirationPreset:ne,customDuration:se,customDurationUnit:he,oddsFormatter:d,outcomeLabels:c,onOutcomeChange:qe,onOrderTypeChange:pt,onQuantityChange:Ve,onLimitPriceChange:Be,onSellAll:E,onExpirationEnabledChange:st,onExpirationPresetChange:He,onCustomDurationChange:ve,onCustomDurationUnitChange:at,onSubmit:Ue})}var En="predict-sell";function ts({id:e=En}){return jsx(AsyncModal,{id:e,children:t=>jsx(Rf,{...t})})}function Rf({params:e,isOpen:t,onOpenChange:r}){let{t:o}=useTranslation(),{isMobile:n}=useScreen();return e?jsx(StyledModal,{isOpen:t,onOpenChange:r,size:n?"lg":"md",backdrop:"opaque",hideCloseButton:true,classNames:{base:THEMED_MODAL_BASE_CLASS,body:"!p-0"},children:jsx(ModalContent,{children:jsxs("div",{className:n?"":"p-2",children:[jsx(_o,{event:e.event,market:e.market,initialOutcome:e.initialOutcome,initialPositionSide:e.initialPositionSide,chain:e.chain,slippageBps:e.slippageBps,onSetupRequired:e.onSetupRequired,onSuccess:()=>r(false),variant:"flat"}),jsx("div",{className:"px-4 pb-4",children:jsx("button",{type:"button",onClick:()=>r(false),className:"w-full h-12 rounded-xl text-sm font-medium text-text-secondary hover:text-text-primary hover:bg-surface-strong/50 transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:o("common.cancel")})})]})})}):null}var ns=40,Tn=36,Ao=480,is=Ao-Tn;function ss({event:e,walletAddress:t,onCancelOrder:r}){let{t:o}=useTranslation(),[n,i]=useState("positions"),s=useMemo(()=>e.markets?.map(c=>c.slug)??[],[e.markets]),{data:a}=usePositionsMulti({kalshi_user:e.source==="kalshi"?t:void 0,polymarket_user:e.source==="polymarket"?t:void 0}),l=useMemo(()=>!a?.positions||!t?0:s.length===0?a.positions.length:a.positions.filter(c=>c.market&&s.includes(c.market.slug)).length,[a?.positions,s,t]),d=[{key:"positions",label:l>0?`${o("predict.positions.title")} (${l})`:o("predict.positions.title")},{key:"orders",label:o("predict.openOrders.title")},{key:"trades",label:o("predict.tradeHistory.title")}];return jsxs("div",{className:"flex flex-col gap-y-2 mt-6 px-1 lg:px-4",children:[jsx("div",{className:"flex items-center gap-x-1 border-b border-border",children:d.map(c=>jsx("button",{type:"button",onClick:()=>i(c.key),className:cn$1("px-3 py-2 text-sm font-medium transition-colors cursor-pointer",n===c.key?"text-foreground border-b-2 border-primary":"text-text-muted hover:text-foreground"),children:c.label},c.key))}),t?jsxs("div",{style:{height:Ao},children:[n==="positions"&&jsx(Ff,{source:e.source,walletAddress:t,marketSlugs:s}),n==="orders"&&jsx(Hf,{source:e.source,walletAddress:t,marketSlugs:s,onCancelOrder:r}),n==="trades"&&jsx(zf,{source:e.source,walletAddress:t})]}):jsx("div",{className:"flex items-center justify-center text-sm text-text-muted",style:{height:Ao},children:o("predict.trade.connectWallet")})]})}function Ff({source:e,walletAddress:t,marketSlugs:r}){let{t:o}=useTranslation(),{data:n,isLoading:i}=usePositionsMulti({kalshi_user:e==="kalshi"?t:void 0,polymarket_user:e==="polymarket"?t:void 0}),s=useMemo(()=>n?.positions?r.length===0?n.positions:n.positions.filter(a=>a.market&&r.includes(a.market.slug)):[],[n?.positions,r]);return i?jsx(ls,{}):s.length===0?jsx(as,{message:o("predict.positions.empty")}):jsxs("div",{className:"flex flex-col h-full",children:[jsxs("div",{className:"flex items-center text-text-muted text-xs lg:text-sm font-normal shrink-0",style:{height:Tn},children:[jsx("div",{className:"flex-[3] min-w-0 pr-2 whitespace-nowrap",children:o("predict.positions.event")}),jsx("div",{className:"flex-1 pr-2 text-right whitespace-nowrap",children:o("predict.positions.totalSize")}),jsx("div",{className:"flex-1 pr-2 text-right whitespace-nowrap",children:o("predict.positions.value")}),jsx("div",{className:"flex-1 pr-2 text-right whitespace-nowrap",children:o("predict.positions.avgPrice")}),jsx("div",{className:"flex-1 pr-2 text-right whitespace-nowrap",children:o("predict.positions.markPrice")}),jsx("div",{className:"flex-[1.5] pr-2 text-right whitespace-nowrap",children:o("predict.positions.pnl")}),jsx("div",{className:"flex-1 pr-2 text-right whitespace-nowrap",children:o("predict.positions.payoutIfRight")}),jsx("div",{className:"flex-[1.5] pr-2 text-right whitespace-nowrap",children:o("predict.positions.estSettlement")}),jsx("div",{className:"w-16 shrink-0"})]}),jsx(List,{style:{height:is},rowComponent:Bf,rowCount:s.length,rowHeight:ns,rowProps:{positions:s,closeLabel:o("predict.positions.close")}})]})}function Bf({index:e,style:t,positions:r,closeLabel:o}){let n=r[e];if(!n)return null;let i=n.pnl??0,s=n.pnl_percent??0,a=n.avg_price??0,l=n.current_price??0,p=i>0?"text-success":i<0?"text-danger":"text-foreground",d=i>0?"+":"",c=n.market?.outcomes?.[0]?.label??n.market?.question??"\u2014",m=n.side,u=n.size,f=n.size*l,g=n.market?.end_at?Vf(n.market.end_at):"\u2014";return jsxs("div",{style:t,className:"flex items-center border-b border-border/50 hover:bg-content2/40 transition-colors text-xs lg:text-sm",children:[jsx("div",{className:"flex-[3] min-w-0 pr-2",children:jsxs("div",{className:"flex flex-col gap-y-0.5",children:[jsx("span",{className:"text-foreground truncate font-medium",children:c}),jsx("span",{className:cn$1("text-[10px] font-medium",m.toLowerCase()==="yes"?"text-primary":"text-secondary"),children:m})]})}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground whitespace-nowrap",children:n.size}),jsxs("div",{className:"flex-1 pr-2 text-right font-mono text-foreground whitespace-nowrap",children:["$",f.toFixed(2)]}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground whitespace-nowrap",children:Cn(a)}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground whitespace-nowrap",children:Cn(l)}),jsxs("div",{className:cn$1("flex-[1.5] pr-2 text-right font-mono whitespace-nowrap",p),children:[d,"$",Math.abs(i).toFixed(2),jsxs("span",{className:"text-[10px] ml-0.5 opacity-70",children:["(",d,s.toFixed(1),"%)"]})]}),jsxs("div",{className:"flex-1 pr-2 text-right font-mono text-foreground whitespace-nowrap",children:["$",u.toFixed(2)]}),jsx("div",{className:"flex-[1.5] pr-2 text-right text-text-muted whitespace-nowrap",children:g}),jsx("div",{className:"w-16 shrink-0 text-right",children:jsx("button",{type:"button",className:"text-xs text-text-muted hover:text-foreground cursor-pointer transition-colors rounded px-2 py-0.5 border border-border hover:border-foreground/40",children:o})})]})}function Hf({source:e,walletAddress:t,marketSlugs:r,onCancelOrder:o}){let{t:n}=useTranslation(),{data:i,isLoading:s,fetchNextPage:a,hasNextPage:l}=useInfiniteOrders({source:e,wallet_address:t}),p=useCancelOrder(),d=useMemo(()=>{let h=i?.pages?.flatMap(y=>y.items)??[],S=new Set(["live","open","submitted","pending"]),x=h.filter(y=>S.has(y.status));return r.length>0&&(x=x.filter(y=>y.market_id&&r.includes(y.market_id))),x},[i?.pages,r]),c=useCallback(h=>{o?o(h.id):p.mutate({source:h.source,id:h.id});},[o,p]),m=d.length,u=m+(l?1:0),f=useCallback(h=>h<m,[m]),g=useCallback(async()=>{await a();},[a]),b=useInfiniteLoader({isRowLoaded:f,loadMoreRows:g,rowCount:u,threshold:5});return s?jsx(ls,{}):d.length===0&&!l?jsx(as,{message:n("predict.openOrders.empty")}):jsxs("div",{className:"flex flex-col h-full",children:[jsxs("div",{className:"flex items-center text-text-muted text-xs lg:text-sm font-normal shrink-0",style:{height:Tn},children:[jsx("div",{className:"w-16 shrink-0 pr-2",children:n("predict.openOrders.side")}),jsx("div",{className:"flex-1 pr-2",children:n("predict.openOrders.outcome")}),jsx("div",{className:"flex-1 pr-2",children:n("predict.openOrders.type")}),jsx("div",{className:"flex-1 pr-2 text-right",children:n("predict.openOrders.price")}),jsx("div",{className:"flex-1 pr-2 text-right",children:n("predict.openOrders.filled")}),jsx("div",{className:"w-20 shrink-0 pr-2",children:n("predict.openOrders.status")}),jsx("div",{className:"w-16 shrink-0"})]}),jsx(List,{style:{height:is},onRowsRendered:b,rowComponent:Uf,rowCount:u,rowHeight:ns,rowProps:{orders:d,itemCount:m,onCancel:c,isCancelling:p.isPending,cancelLabel:n("predict.openOrders.cancel")}})]})}function Uf({index:e,style:t,orders:r,itemCount:o,onCancel:n,isCancelling:i,cancelLabel:s}){let{t:a}=useTranslation();if(e>=o)return jsx("div",{style:t,className:"flex justify-center items-center",children:jsx(Spinner,{size:"sm"})});let l=r[e];if(!l)return null;let p=l.side==="BUY";return jsxs("div",{style:t,className:"flex items-center border-b border-border/50 text-xs lg:text-sm",children:[jsx("div",{className:"w-16 shrink-0 pr-2",children:jsx("span",{className:cn$1("inline-block rounded px-1.5 py-0.5 text-[10px] font-medium",p?"bg-primary/10 text-primary":"bg-danger/10 text-danger"),children:l.side})}),jsx("div",{className:"flex-1 pr-2 text-foreground capitalize",children:l.outcome??"\u2014"}),jsx("div",{className:"flex-1 pr-2 text-text-muted capitalize",children:l.order_type?.toLowerCase()==="market"?a("predict.trade.market"):a("predict.trade.limit")}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:l.price?Cn(parseFloat(l.price)):"\u2014"}),jsxs("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:[l.size_matched??"0","/",l.original_size??"\u2014"]}),jsx("div",{className:"w-20 shrink-0 pr-2",children:jsx(Wf,{status:l.status})}),jsx("div",{className:"w-16 shrink-0 text-right",children:jsx("button",{type:"button",onClick:()=>n(l),disabled:i,className:"text-[10px] text-danger hover:text-danger/80 cursor-pointer disabled:opacity-50 transition-colors",children:i?jsx(Spinner,{size:"sm"}):s})})]})}function Wf({status:e}){return jsx("span",{className:cn$1("inline-block rounded px-1.5 py-0.5 text-[10px] font-medium capitalize",{live:"bg-success/10 text-success",open:"bg-success/10 text-success",submitted:"bg-warning/10 text-warning",pending:"bg-warning/10 text-warning",matched:"bg-primary/10 text-primary",cancelled:"bg-text-muted/10 text-text-muted",failed:"bg-danger/10 text-danger",expired:"bg-text-muted/10 text-text-muted"}[e]??"bg-text-muted/10 text-text-muted"),children:e})}function zf({source:e,walletAddress:t}){let{t:r}=useTranslation(),{data:o,isLoading:n,fetchNextPage:i,hasNextPage:s}=useInfiniteTrades({source:e,wallet:t,limit:50}),a=useMemo(()=>o?.pages?.flatMap(u=>u.items)??[],[o?.pages]),l=a.length,p=l+(s?1:0),d=useCallback(u=>u<l,[l]),c=useCallback(async()=>{await i();},[i]),m=useInfiniteLoader({isRowLoaded:d,loadMoreRows:c,rowCount:p,threshold:5});return n?jsx(ls,{}):a.length===0&&!s?jsx(as,{message:r("predict.tradeHistory.empty")}):jsxs("div",{className:"flex flex-col h-full",children:[jsxs("div",{className:"flex items-center text-text-muted text-xs lg:text-sm font-normal shrink-0",style:{height:Tn},children:[jsx("div",{className:"w-16 shrink-0 pr-2",children:r("predict.tradeHistory.side")}),jsx("div",{className:"flex-1 pr-2",children:r("predict.tradeHistory.outcome")}),jsx("div",{className:"flex-1 pr-2 text-right",children:r("predict.tradeHistory.price")}),jsx("div",{className:"flex-1 pr-2 text-right",children:r("predict.tradeHistory.qty")}),jsx("div",{className:"flex-1 pr-2 text-right",children:r("predict.tradeHistory.total")}),jsx("div",{className:"flex-[1.5] pr-2 text-right",children:r("predict.tradeHistory.time")})]}),jsx(List,{style:{height:is},onRowsRendered:m,rowComponent:$f,rowCount:p,rowHeight:ns,rowProps:{trades:a,itemCount:l}})]})}function $f({index:e,style:t,trades:r,itemCount:o}){if(e>=o)return jsx("div",{style:t,className:"flex justify-center items-center",children:jsx(Spinner,{size:"sm"})});let n=r[e];if(!n)return null;let i=n.side?.toUpperCase()==="BUY",s=Kf(n.timestamp),a=n.price??0,l=n.usd_size??0;return jsxs("div",{style:t,className:"flex items-center border-b border-border/50 text-xs lg:text-sm",children:[jsx("div",{className:"w-16 shrink-0 pr-2",children:jsx("span",{className:cn$1("inline-block rounded px-1.5 py-0.5 text-[10px] font-medium",i?"bg-primary/10 text-primary":"bg-danger/10 text-danger"),children:n.side})}),jsx("div",{className:"flex-1 pr-2 text-foreground capitalize",children:n.outcome??"\u2014"}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:Cn(a)}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:n.size}),jsxs("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:["$",l.toFixed(2)]}),jsx("div",{className:"flex-[1.5] pr-2 text-right text-text-muted whitespace-nowrap",children:s})]})}function as({message:e}){return jsx("div",{className:"flex items-center justify-center text-sm text-text-muted",style:{height:Ao},children:e})}function ls(){return jsx("div",{className:"flex flex-col gap-y-2 py-3 animate-pulse",style:{height:Ao},children:Array.from({length:6}).map((e,t)=>jsx(Skeleton,{className:"h-8 w-full rounded-md"},t))})}function Cn(e){let t=e*100;return t<1&&t>0?"< 1\xA2":`${t.toFixed(1)}\xA2`}function Kf(e){let t=new Date(e*1e3),r=(t.getMonth()+1).toString().padStart(2,"0"),o=t.getDate().toString().padStart(2,"0"),n=t.getHours().toString().padStart(2,"0"),i=t.getMinutes().toString().padStart(2,"0");return `${r}/${o} ${n}:${i}`}function Vf(e){try{return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})}catch{return "\u2014"}}var hl=`
74
+ `).map((r,o)=>jsxs("span",{children:[o>0&&jsx("br",{className:"hidden sm:block"}),r,o===0?" ":""]},o))})]}),jsx("div",{className:"evt-stat-grid",style:e?{animation:"evtStatsEnter 0.5s cubic-bezier(0.34,1.56,0.64,1) both",animationDelay:"0.1s"}:{},children:pm.map((r,o)=>jsxs("div",{style:{padding:"14px 16px",background:e?`linear-gradient(to bottom, ${r.gradientFrom}, ${r.gradientTo})`:"hsl(var(--heroui-foreground) / 0.02)",borderRight:o%2===0?"1px solid var(--color-border-subtle)":"none",borderBottom:o<2?"1px solid var(--color-border-subtle)":"none",...e?{animation:"evtStatCardEnter 0.45s cubic-bezier(0.34,1.56,0.64,1) both",animationDelay:`${150+o*60}ms`}:{}},children:[jsx("div",{className:"evt-stat-val",style:{fontWeight:700,fontVariantNumeric:"tabular-nums",color:e?r.valueColor:"transparent",display:"flex",alignItems:"center"},children:e?r.format(e[r.key]):jsx("div",{style:{height:16,width:56,borderRadius:4,background:"hsl(var(--heroui-foreground) / 0.06)",animation:"evtStatCardEnter 0.6s ease-out both",animationDelay:`${o*80}ms`}})}),jsx("div",{className:"evt-stat-label",style:{fontWeight:500,color:e?"var(--color-text-muted)":"transparent",marginTop:2,display:"flex",alignItems:"center"},children:e?t(r.labelKey):jsx("div",{style:{height:10,width:64,borderRadius:4,background:"hsl(var(--heroui-foreground) / 0.04)",animation:"evtStatCardEnter 0.6s ease-out both",animationDelay:`${50+o*80}ms`}})})]},r.key))})]})]})}function ji({event:e,market:t,position:r,onSuccess:o,onCancel:n}){let{t:i,i18n:s}=useTranslation(),{mutateAsync:a}=useRedeemPosition(),{start:l}=useTradeResultConfirmation(),{evmAddress:p}=cr(),d=useWallets(),[c,m]=useState("idle"),[u,f]=useState(null),g=t.provider_meta?.["polymarket.conditionId"],b=t.provider_meta?.["polymarket.negRisk"]??false,h=p??"",S=useMemo(()=>Gr(i),[s,i]),x=useMemo(()=>d.find(G=>G.chainNamespace===ChainNamespace.EVM&&G.isConnected),[d]),y=Za(r.side,t.outcomes),k=t.outcomes?.[y]?.label??r.side,P=t.result!=null?Za(t.result,t.outcomes):-1,N=(P>=0?t.outcomes?.[P]:void 0)?.label??t.result??"",w=t.result!=null?y===P:true,R=useMemo(()=>w?r.size:0,[w,r.size]),A=useCallback(async()=>{if(!(!g||!h||!x)){m("pending"),f(null);try{let G=await x.getEip1193Provider();if(!G)throw new Error("EIP-1193 provider unavailable");await a({wallet_address:h,condition_id:g,neg_risk:b,signMessage:async W=>await G.request({method:"personal_sign",params:[W,h]}),signTypedData:async W=>await G.request({method:"eth_signTypedData_v4",params:[h,JSON.stringify(W)]})}),m("confirming");let U=Mr({messages:S});U.submitted(),await l({source:r.source,user:h,marketSlug:r.market?.slug??t.slug,eventSlug:r.event?.slug??e?.slug,expectation:"redeem",expectedPayout:R})==="confirmed"?(m("success"),U.completed()):(m("delayed"),U.delayed()),o?.();}catch(G){m("error"),f(G instanceof Error?G.message:i("predict.redeem.error"));}}},[g,h,b,x,a,S,l,r.source,r.market?.slug,r.event?.slug,t.slug,e?.slug,R,o,i]),X=useAuthCallback(A),L=c==="idle"&&!!g&&!!h&&!!x&&r.redeemable;return jsxs("div",{className:"flex flex-col gap-4 p-4",children:[jsx("div",{className:"text-base font-medium text-text-primary",children:e?.title??t.question}),jsxs("div",{className:"flex flex-col gap-2 rounded-xl bg-surface-strong/40 p-3",children:[jsx(Nn,{label:i("predict.positions.side"),value:k,valueClassName:w?"text-success":"text-danger"}),t.result!=null&&jsx(Nn,{label:i("predict.redeem.result"),value:N,valueClassName:"text-success"}),jsx(Nn,{label:i("predict.positions.size"),value:r.size.toFixed(2)}),jsx(Nn,{label:i("predict.redeem.expectedPayout"),value:`$${R.toFixed(2)}`,valueClassName:R>0?"text-success":"text-text-secondary"})]}),!w&&R===0&&jsx("p",{className:"text-sm text-text-muted",children:i("predict.redeem.noWinnings")}),c==="error"&&u&&jsx("p",{className:"text-sm text-danger",children:u}),c==="success"&&jsx("p",{className:"text-sm text-success",children:i("predict.redeem.success")}),c==="delayed"&&jsx("p",{className:"text-sm text-text-secondary",children:i("predict.trade.resultDelayed",{defaultValue:"Your trade was submitted successfully. Confirmation is taking a little longer."})}),jsxs("div",{className:"flex flex-col gap-2",children:[c!=="success"&&c!=="delayed"&&jsx(Button,{color:"success",className:"w-full h-12 rounded-xl text-sm font-semibold",isDisabled:!L,isLoading:c==="pending"||c==="confirming",onPress:X,spinner:jsx(Spinner,{size:"sm",color:"current"}),children:i("predict.redeem.confirm")}),n&&c!=="success"&&c!=="delayed"&&jsx("button",{type:"button",onClick:n,className:"w-full h-12 rounded-xl text-sm font-medium text-text-secondary hover:text-text-primary hover:bg-surface-strong/50 transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:i("common.cancel")}),(c==="success"||c==="delayed")&&n&&jsx(Button,{className:"w-full h-12 rounded-xl text-sm font-medium",onPress:n,children:i("common.ok")})]})]})}function Nn({label:e,value:t,valueClassName:r="text-text-primary"}){return jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{className:"text-sm text-text-secondary",children:e}),jsx("span",{className:`text-sm font-medium ${r}`,children:t})]})}function Za(e,t){let r=e.toLowerCase();if(r==="yes")return 0;if(r==="no"||!t)return 1;let o=t.findIndex(n=>n.label.toLowerCase()===r);return o>=0?o:1}var tl="predict-redeem";function Gi({id:e=tl}){return jsx(AsyncModal,{id:e,children:t=>jsx(Tm,{...t})})}function Tm({params:e,isOpen:t,onOpenChange:r}){let{t:o}=useTranslation(),{isMobile:n}=useScreen();return e?jsx(StyledModal,{isOpen:t,onOpenChange:r,size:n?"lg":"md",backdrop:"opaque",hideCloseButton:true,classNames:{base:THEMED_MODAL_BASE_CLASS,body:"!p-0"},children:jsx(ModalContent,{children:jsxs("div",{className:n?"":"p-2",children:[jsxs("div",{className:"px-4 pt-4 pb-1",children:[jsx("h3",{className:"text-lg font-semibold text-text-primary",children:o("predict.redeem.title")}),jsx("p",{className:"text-sm text-text-secondary mt-1",children:o("predict.redeem.description")})]}),jsx(ji,{event:e.event,market:e.market,position:e.position,onSuccess:()=>{setTimeout(()=>r(false),1500);},onCancel:()=>r(false)})]})})}):null}function Qi(e){return e?.trim().toLowerCase()??""}function qi(e,t){let r=e.provider_meta?.[t];return typeof r=="string"?r:""}function il(e,t){return !!(e&&t&&e.trim().toLowerCase().includes(t))}function sf(e,t){let r=Qi(e.side);if(r==="yes"||r==="no")return r;if(r==="over"||r==="odd")return "yes";if(r==="under"||r==="even")return "no";let o=[t.outcomes?.[0]?.label,qi(t,"polymarket.groupItemTitle"),qi(t,"polymarket.groupItemTitleTrans"),qi(t,"polymarket.group_item_title_trans")],n=[t.outcomes?.[1]?.label];return o.some(i=>il(i,r))?"yes":n.some(i=>il(i,r))?"no":null}function Xi({market:e,initialOutcome:t="yes",initialPositionSide:r,slippageBps:o=100,onSuccess:n}){let{t:i,i18n:s}=useTranslation(),a=useRef(n);a.current=n;let{status:l}=useAuth(),p=useWallets(),d=usePredictClient(),c=useContext(PolymarketContext),m=useQueryClient(),{start:u}=useTradeResultConfirmation(),f=e.source,g=f==="polymarket",b=p.find(T=>T.chainNamespace===ChainNamespace.SOLANA&&T.isConnected),h=p.find(T=>T.chainNamespace===ChainNamespace.EVM&&T.isConnected&&"switchChain"in T),S=l==="authenticated",x=b?.address,y=h?.address,[v,k]=useState(t),[P,M]=useState("market"),[N,w]=useState(NaN),[R,A]=useState(NaN),[X,L]=useState(false),[G,U]=useState(false),[oe,W]=useState(null),[te,ne]=useState(null),[se,he]=useState(false),[Pe,pt]=useState(false),[Ve,Be]=useState("1h"),[E,st]=useState(30),[He,ve]=useState("minutes"),at=useMemo(()=>Gr(i),[s,i]),we=true,Ue=useCallback(async(T,Re)=>{let Le=Mr({messages:at});Le.submitted(),await u({source:f,user:f==="kalshi"?x:y,kalshiUser:we?x:void 0,polymarketUser:y,marketSlug:e.slug,eventSlug:e.event_slug,expectation:T,getOrdersHeaders:Re})==="confirmed"?Le.completed():Le.delayed();},[u,we,y,e.event_slug,e.slug,f,at,x]),qe=useMemo(()=>{if(f!=="polymarket")return;let T=e.provider_meta?.["polymarket.clobTokenIds"];return T?(typeof T=="string"?JSON.parse(T):T)[v==="yes"?0:1]:void 0},[f,e.provider_meta,v]),{data:C,isLoading:O}=useTickSize(qe),z=normalizePolymarketTickSize(C?.minimum_tick_size),{data:Z,isLoading:me}=useFeeRate(qe),Ne=String(Z?.base_fee??0),{data:lt}=useRebateConfig(),ct=lt?.builder_enabled&&lt.builder_code?lt.builder_code:void 0,kt=false,Qe=null,Yt=false,We,et,xe;try{let T=cr();we=T.enableKalshi,kt=T.kalshiKycVerified,Qe=T.kalshiKycUrl,Yt=T.polymarketSetupVerified,We=T.polymarketSafeAddress,et=T.polymarketWalletKind,xe=T.polymarketWalletAddress;}catch{}let mt=f==="kalshi"&&!kt,St=f==="polymarket"&&!Yt,Me=useCallback(async()=>{if(!h||!c)return null;let T=await h.getEip1193Provider();if(!T)return null;let Re=et==="deposit"&&!!xe,Le=!Re&&!!We,ze={address:h.address,signatureType:Re?3:Le?2:0,signTypedData:async(vt,Zt,Wt,$e)=>{let ar=[];"name"in vt&&ar.push({name:"name",type:"string"}),"version"in vt&&ar.push({name:"version",type:"string"}),"chainId"in vt&&ar.push({name:"chainId",type:"uint256"}),"verifyingContract"in vt&&ar.push({name:"verifyingContract",type:"address"}),"salt"in vt&&ar.push({name:"salt",type:"bytes32"});let on={EIP712Domain:ar,...Zt};return await T.request({method:"eth_signTypedData_v4",params:[h.address,JSON.stringify({domain:vt,types:on,primaryType:Wt,message:$e})]})}};return c.credentials??await c.authenticate(ze)},[We,et,xe,h,c]),{data:tt}=useRealtimeOrderbook({slug:e.slug,source:f,outcome:v},{enabled:e.status==="open"}),Ce=useMemo(()=>{let T=pickBestBid(tt,v);if(T!=null&&T>0)return T;let Re=v==="yes"?0:1,Le=e.outcomes[Re];return Le?.best_bid??Le?.price??.5},[tt,e.outcomes,v]),Lt=f==="kalshi"?x??"":y??"",{data:I,isLoading:_e}=usePositionsMulti({kalshi_user:f==="kalshi"?Lt:void 0,polymarket_user:f==="polymarket"?Lt:void 0},{enabled:!!Lt,refetchInterval:3e4}),Xe=Qi(r),fo=r?.trim(),B=useMemo(()=>I?I.positions.find(T=>T.market?.slug!==e.slug?false:Xe?Qi(T.side)===Xe:sf(T,e)===v)??null:null,[I,e,v,Xe]),Ie=fo||B?.side||v,Pt=useCallback(async()=>{let T=await Me();return T?await buildPolymarketL2Headers(T.address,{apiKey:T.apiKey,secret:T.secret,passphrase:T.passphrase,method:"GET",requestPath:"/data/orders",body:""}):{}},[Me]),{data:Ft,isLoading:go}=useAvailableShares({source:f,user:Lt,market:e.slug,side:Ie},f==="polymarket"?{getHeaders:Pt}:void 0,{enabled:!!Lt&&!!e.slug,refetchOnMount:"always"}),ni=e.provider_meta?.["dflow.yesMint"]??"",ii=e.provider_meta?.["dflow.noMint"]??"",qt=SOLANA_TOKENS.stablecoins.USDC.address,Ir=e.provider_meta?.["dflow.collateralMint"]||"",si=v==="yes"?ni:ii,ft=useMemo(()=>f==="polymarket"?getPolymarketSharesPrecision(z):Ft?.precision??0,[f,z,Ft?.precision]),Ot=Ft?.active_order_shares??0,Dr=f==="polymarket"&&!!B?.size&&(Ft?.total_shares??0)<=0&&(Ft?.available_shares??0)<=0,ho=Dr?B?.size??0:0,Ar=Dr?ho:Ft?.total_shares??0,sr=Dr?Math.max(0,ho-Ot):Ft?.available_shares??0,ai=go||_e,en=B?.market?.provider_meta,Fr=en?.["dflow.outcomeMint"]||si,Qt=en?.["dflow.collateralMint"]||Ir,vr=Fr,xr=Qt||qt,br=useMemo(()=>isNaN(N)||N<=0?"0":String(Math.round(N*1e6)),[N]),vo=f==="kalshi"&&!!vr&&!!xr&&!!x&&br!=="0",{refetch:xo}=useDFlowQuote({inputMint:vr,outputMint:xr,amount:br,userPublicKey:x??"",slippageBps:100},{enabled:vo}),Br=useMemo(()=>isNaN(N)||N<=0?0:N,[N]),_t=useMemo(()=>walkOrderbook({orderbook:tt,outcome:v,side:"sell",sharesNeeded:Br,slippageBps:o}),[tt,v,Br,o]),D=useMemo(()=>_t.status==="ok"&&_t.worstPrice!=null&&_t.worstPrice>0?_t.worstPrice:Ce,[_t,Ce]),De=useMemo(()=>P==="limit"&&g&&!isNaN(R)?R:D,[P,g,R,D]),Te=useMemo(()=>isNaN(N)||N<=0?0:N*De,[N,De]),It=useMemo(()=>f!=="polymarket"?0:Mi({grossReturn:Te,pricePerShare:De,feeRateBps:Number(Ne)}),[f,Te,De,Ne]),bo=useMemo(()=>Math.max(0,Te-It),[Te,It]),Xt=useCallback(T=>{k(T),A(NaN),w(NaN),U(false);},[]);useEffect(()=>{Xt(t);},[t,Xt]);let Jt=useCallback(T=>{M(T);},[]);useEffect(()=>{P==="limit"&&A(Math.round(Ce*1e4)/1e4);},[P,v,Ce]);let gt=useCallback(T=>{if(U(false),isNaN(T)){w(NaN);return}w(be(Math.max(0,T),ft));},[ft]),li=useCallback(()=>{U(true),w(be(sr,ft));},[sr,ft]),tn=useCallback(T=>{if(isNaN(T)){A(NaN);return}A(Math.round(T*1e4)/1e4);},[]),Ut=useCallback(()=>{w(NaN),A(NaN),M("market"),U(false),pt(false),Be("1h"),st(30),ve("minutes");},[]),Hr=useMemo(()=>{let T=[];return isNaN(N)||N<=0?T.push(i("predict.trade.minQuantity",{amount:ko})):N<ko&&T.push(i("predict.trade.minQuantity",{amount:ko})),e.status!=="open"&&T.push(i("predict.trade.marketNotActive")),!isNaN(N)&&N>0&&!G&&N>sr&&T.push(i("predict.trade.insufficientSharesDetail",{total:be(Ar,ft).toFixed(ft),active:be(Ot,ft).toFixed(ft),available:be(sr,ft).toFixed(ft)})),P==="limit"&&g&&(isNaN(R)||R<.01||R>.99)&&T.push(i("predict.trade.limitPriceRange")),P==="limit"&&g&&Pe&&Ve==="custom"&&(isNaN(E)||E<=0)&&T.push(i("predict.trade.expiration.invalidDate")),f==="polymarket"&&P==="market"&&!isNaN(N)&&N>0&&(_t.status==="insufficient_liquidity"?T.push(i("predict.trade.insufficientLiquidity",{available:be(_t.totalAvailable,2)})):_t.status==="exceeds_slippage"&&T.push(i("predict.trade.priceImpactTooHigh",{impact:(_t.priceImpactBps/100).toFixed(2),slippage:(o/100).toFixed(2)}))),{isValid:T.length===0,errors:T}},[N,e.status,sr,Ar,Ot,G,P,g,R,Pe,Ve,E,ft,f,_t,o,i]),{mutateAsync:Ur}=useDFlowSubmit(),{data:yr}=useOrder({id:oe??"",source:f},{enabled:!!oe}),rn=useCallback(async()=>{if(!te||!x||!b)return;let{cashAmount:T,collateral:Re}=te;ne(null);try{let ze=(await d.createDFlowQuote({inputMint:Re,outputMint:qt,amount:T,userPublicKey:x,slippageBps:100}))?.transaction;if(!ze)return;let vt=Uint8Array.from(atob(ze),Wt=>Wt.charCodeAt(0)),Zt=await b.signTransaction(vt);await Ur({signedTransaction:btoa(String.fromCharCode(...Zt)),orderContext:{user_public_key:x,input_mint:Re,output_mint:qt,amount:T,price:"1",side:"SELL",outcome:"",market_slug:"",slippage_bps:100}});}catch{}},[te,x,b,d,Ur,qt]),kr=useCallback(()=>{m.invalidateQueries({queryKey:["predict","available-shares"]});},[m]);useEffect(()=>{if(!yr||!oe)return;let{status:T}=yr;T==="closed"?(W(null),te?rn().finally(()=>{L(false),Ue("sell-market"),kr(),Ut(),a.current?.();}):(L(false),Ue("sell-market"),kr(),Ut(),a.current?.())):(T==="failed"||T==="expired")&&(L(false),W(null),ne(null),toast.error(i("predict.trade.submitError")));},[yr,oe,te,rn,Ue,kr,Ut,i]);let Wr=useCallback(async()=>{if(!x||!b)return;if(!vr||!xr){toast.error("Missing token mint addresses"),L(false);return}if(!kt){he(true),L(false);return}let Le=(await xo()).data,ze=Le?.transaction;if(!ze){toast.error(i("predict.trade.submitError")),L(false);return}if(Qt&&Qt!==qt){let $e=String(Le?.outAmount??"");$e&&$e!=="0"&&ne({cashAmount:$e,collateral:Qt});}let vt=Uint8Array.from(atob(ze),$e=>$e.charCodeAt(0)),Zt=await b.signTransaction(vt),Wt=await Ur({signedTransaction:btoa(String.fromCharCode(...Zt)),orderContext:{user_public_key:x,input_mint:vr,output_mint:xr,amount:br,price:String(Ce),side:"SELL",outcome:v==="yes"?"YES":"NO",market_slug:e.slug,slippage_bps:100}});W(Wt.signature);},[x,b,xo,Ur,vr,xr,br,Ce,v,e.slug,Qt,qt,i,kt]),zr=useCallback(async()=>{if(!h||!c)return;let T=h.chain,Re=T!==Chain.POLYGON;Re&&await h.switchChain(Chain.POLYGON);try{let Le=await h.getEip1193Provider();if(!Le){toast.error(i("predict.trade.submitError")),L(!1);return}let ze=et==="deposit"&&!!xe,vt=!ze&&!!We,Zt=ze?xe:We,Wt={address:h.address,signatureType:ze?3:vt?2:0,signTypedData:async(zt,sn,ui,pi)=>{let $r=[];"name"in zt&&$r.push({name:"name",type:"string"}),"version"in zt&&$r.push({name:"version",type:"string"}),"chainId"in zt&&$r.push({name:"chainId",type:"uint256"}),"verifyingContract"in zt&&$r.push({name:"verifyingContract",type:"address"}),"salt"in zt&&$r.push({name:"salt",type:"bytes32"});let xd={EIP712Domain:$r,...sn};return await Le.request({method:"eth_signTypedData_v4",params:[h.address,JSON.stringify({domain:zt,types:xd,primaryType:ui,message:pi})]})}},$e=await Me();if(!$e){toast.error(i("predict.trade.submitError")),L(!1);return}let ar=v==="yes"?0:1,on="",nn=e.provider_meta?.["polymarket.clobTokenIds"];nn&&(on=(typeof nn=="string"?JSON.parse(nn):nn)[ar]??"");let ea=e.provider_meta?.["polymarket.negRisk"]??!1,hd=P==="limit"&&!isNaN(R)?R:D,vd=No(hd,z),ci={tokenId:on,price:vd,size:N,side:"SELL",orderType:P==="limit"?Pe?"GTD":"GTC":"FOK",tickSize:z,negRisk:ea,...Zt&&{funderAddress:Zt},...ct&&{builderCode:ct},...P==="limit"&&Pe&&{expiration:Po(Ve,E,He)}},di;if(ze)di=await buildSignedV2OrderPayload({signer:Wt,depositWalletAddress:Zt,input:ci,owner:$e.apiKey});else {let zt=buildCtfExchangeDomain(ea),sn=buildOrderMessage({...ci,signerAddress:Wt.address,signatureType:Wt.signatureType,feeRateBps:Ne}),ui=await Wt.signTypedData(zt,CTF_ORDER_TYPES,"Order",sn),pi=buildSignedOrder(sn,ui,ci.orderType);di=buildClobPayload(pi,$e.apiKey);}await d.executePolymarketOrder({payload:di,l2_api_key:$e.apiKey,l2_secret:$e.secret,l2_passphrase:$e.passphrase,signer_address:$e.address,owner:$e.apiKey}),kr(),Ue(P==="limit"?"sell-limit":"sell-market",async()=>await buildPolymarketL2Headers($e.address,{apiKey:$e.apiKey,secret:$e.secret,passphrase:$e.passphrase,method:"GET",requestPath:"/data/orders"})),Ut(),L(!1),a.current?.();}finally{Re&&T&&h.switchChain(T).catch(()=>{});}},[h,c,Me,v,e,P,Ue,R,D,N,d,kr,Pe,Ve,E,He,Ut,i,z,Ne,We,et,xe,ct]),Dt=useCallback(async()=>{if(!(!Hr.isValid||!S)){L(true),W(null),he(false);try{f==="kalshi"?await Wr():await zr();}catch(T){let Re=T instanceof Error?T.message:"",Le=f==="polymarket"&&Re?Mo(Re,i,"sell"):Re||void 0;toast.error(Le||i("predict.trade.submitError")),L(false);}}},[Hr.isValid,S,f,Wr,zr,i]);return {outcome:v,orderType:P,quantity:N,limitPrice:R,shares:Br,effectivePrice:De,grossReturn:Te,estimatedFee:It,estimatedReturn:bo,pricePerShare:Ce,isMarketDataLoading:f==="polymarket"&&(me||O),isSubmitting:X,authStatus:l,validation:Hr,supportsLimitOrder:g,kycRequired:se,needsKyc:mt,needsSetup:St,kycUrl:Qe,totalShares:Ar,activeOrderShares:Ot,availableShares:sr,isAvailableLoading:ai,isSellAll:G,precision:ft,expirationEnabled:Pe,expirationPreset:Ve,customDuration:E,customDurationUnit:He,setOutcome:Xt,setOrderType:Jt,setQuantity:gt,setLimitPrice:tn,setSellAll:li,setExpirationEnabled:pt,setExpirationPreset:Be,setCustomDuration:st,setCustomDurationUnit:ve,submit:Dt}}var hf=["5m","1h","12h","24h","eod","custom"],vf={"5m":"predict.trade.expiration.5m","1h":"predict.trade.expiration.1h","12h":"predict.trade.expiration.12h","24h":"predict.trade.expiration.24h",eod:"predict.trade.expiration.eod",custom:"predict.trade.expiration.custom"},xf=["minutes","hours","days"],bf={minutes:"predict.trade.expiration.minutes",hours:"predict.trade.expiration.hours",days:"predict.trade.expiration.days"},yf={maximumFractionDigits:0},_o="-";function es({event:e,market:t,variant:r="bordered",outcome:o,orderType:n,quantity:i,limitPrice:s,effectivePrice:a,grossReturn:l,estimatedFee:p,estimatedReturn:d,isMarketDataLoading:c,isSubmitting:m,authStatus:u,isValid:f,validationErrors:g,supportsLimitOrder:b,kycRequired:h,needsKyc:S,needsSetup:x,onSetupRequired:y,kycUrl:v,totalShares:k,activeOrderShares:P,availableShares:M,isAvailableLoading:N,precision:w,expirationEnabled:R,expirationPreset:A,customDuration:X,customDurationUnit:L,oddsFormatter:G,outcomeLabels:U,onOutcomeChange:oe,onOrderTypeChange:W,onQuantityChange:te,onLimitPriceChange:ne,onSellAll:se,onExpirationEnabledChange:he,onExpirationPresetChange:Pe,onCustomDurationChange:pt,onCustomDurationUnitChange:Ve,onSubmit:Be}){let{t:E}=useTranslation(),[st,He]=useState(false),[ve,at]=useState(true),we=useDisclosure(),[Ue,qe]=useState(""),C=useRef(false);useEffect(()=>{C.current||qe(isNaN(i)?"":String(i));},[i]);let[O,z]=useState(""),Z=useRef(false);useEffect(()=>{Z.current||(isNaN(s)?z(""):z(String(parseFloat((s*100).toFixed(2)))));},[s]);let me=useCallback(I=>{if(I!==""&&!/^\d*\.?\d{0,2}$/.test(I))return;if(z(I),I===""||I==="."){ne(NaN);return}let Xe=parseFloat(I);isNaN(Xe)||ne(Xe/100);},[ne]),Ne=useCallback(I=>{let _e=new RegExp(`^\\d*\\.?\\d{0,${w}}$`);if(I!==""&&!_e.test(I))return;if(qe(I),He(false),I===""||I==="."){te(NaN);return}let Xe=parseFloat(I);isNaN(Xe)||te(Xe);},[te,w]);useEffect(()=>{h&&!we.isOpen&&we.onOpen();},[h,we]);let lt=useMemo(()=>{let I=o==="yes"?t.yesBid:t.noBid;return I!=null?parseFloat((Number(I)*100).toFixed(2)):null},[o,t]),ct=o==="yes"?t.yesBid:t.noBid,kt=ct!=null&&G?G(Number(ct)):lt!=null?`${lt} \xA2`:null,Qe=Number.isFinite(a)?parseFloat((a*100).toFixed(2)):null,Yt=Number.isFinite(a)&&G?G(a):Qe!=null?`${Qe} \xA2`:null,We=!isNaN(i)&&i>0,et=We&&i>0?d/i:0,xe=et>0&&G?G(et):et>0?`${parseFloat((et*100).toFixed(2))} \xA2`:_o,mt=u==="authenticated",St=u==="authenticating"||u==="deauthenticating",Me=mt&&(S||x),tt=useCallback(I=>U?.[I]??E(I==="yes"?"predict.trade.yes":"predict.trade.no"),[U,E]),Ce=useMemo(()=>{if(St)return E("predict.trade.checkingLogin");if(!mt)return E("predict.trade.loginToTrade");if(S)return E("predict.trade.kycRequired");if(x)return E("predict.trade.setupRequired");if(N)return E("predict.trade.loadingBalance");if(c)return E("predict.trade.loadingMarketData");if(m)return E("predict.trade.submitting");if(h)return E("predict.trade.kycRequired");if(!We)return E("predict.trade.enterAmount");let I=tt(o);return `${E("predict.trade.sell")} ${I}`},[St,mt,S,x,N,c,m,h,We,o,tt,E]),Lt=()=>{if(!mt){He(false),Be();return}if(S){we.onOpen();return}if(x&&y){He(false),y();return}if(h){we.onOpen();return}if(!f){He(true);return}He(false),Be();};return jsxs(Fragment,{children:[jsxs("div",{className:"flex w-full flex-col gap-y-4 p-4",style:r==="bordered"?{borderRadius:14,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content2) / 0.4)",transition:"border-color 0.2s"}:void 0,onMouseEnter:I=>{r==="bordered"&&(I.currentTarget.style.borderColor="hsl(var(--heroui-content4) / 0.8)");},onMouseLeave:I=>{r==="bordered"&&(I.currentTarget.style.borderColor="hsl(var(--heroui-content3) / 0.6)");},children:[e&&jsxs("div",{className:"flex items-center gap-x-3",children:[e.imageUrl&&jsx("img",{src:e.imageUrl,alt:e.title,className:"h-10 w-10 shrink-0 rounded-lg object-cover"}),jsxs("div",{className:"flex min-w-0 flex-col gap-y-0.5",children:[jsx("span",{className:"text-sm text-text-muted leading-tight line-clamp-1",children:e.title}),jsxs("span",{className:"text-base font-semibold leading-tight line-clamp-1",children:[jsx("span",{className:"text-foreground",children:t.yesSubTitle}),jsx("span",{className:"text-foreground",children:" \xB7 "}),jsxs("span",{className:"text-negative",children:[E("predict.trade.sell")," ",tt(o)]})]})]})]}),jsxs("div",{className:"flex items-center justify-between",children:[b?jsxs(Tabs,{variant:"underlined",selectedKey:n,onSelectionChange:I=>W(I),classNames:{tabList:"gap-x-4",tab:"px-0"},children:[jsx(Tab,{title:E("predict.trade.market")},"market"),jsx(Tab,{title:E("predict.trade.limit")},"limit")]}):jsx("span",{className:"text-sm font-medium text-foreground",children:E("predict.trade.market")}),n==="limit"&&b?jsx(StyledInput,{"aria-label":E("predict.trade.limitPrice"),placeholder:"50",size:"sm",radius:"none",inputMode:"decimal",value:O,onChange:I=>me(I.target.value),onFocus:()=>{Z.current=true;},onBlur:()=>{Z.current=false,isNaN(s)?z(""):z(String(parseFloat((s*100).toFixed(2))));},endContent:jsx("span",{className:"text-xl font-bold tabular-nums text-foreground",children:"\xA2"}),classNames:{base:"w-28",inputWrapper:"bg-content2 data-[hover=true]:bg-content2 group-data-[focus=true]:bg-content2 rounded-lg px-2 h-9 min-h-9",input:"text-xl font-bold tabular-nums text-right"}}):kt!=null&&jsx("span",{className:"text-xl font-bold tabular-nums",children:kt})]}),jsx("div",{className:"flex gap-x-2",children:["yes","no"].map(I=>{let _e=I==="yes"?t.yesBid:t.noBid;return jsx("div",{className:"flex flex-1 flex-col gap-y-1",children:jsxs("button",{type:"button",onClick:()=>oe(I),className:`w-full rounded-lg border py-2 text-sm font-medium transition-colors cursor-pointer ${o===I?"border-negative bg-negative/10 text-negative":"border-default-400 text-foreground hover:border-default-500"}`,children:[jsx("span",{children:tt(I)}),_e!=null&&jsx("span",{className:"ml-1 opacity-70",children:G?G(Number(_e)):`${parseFloat((Number(_e)*100).toFixed(2))}\xA2`})]})},I)})}),jsxs("div",{className:"flex flex-col gap-y-1.5",children:[jsxs("div",{className:"flex items-center justify-between text-xs text-text-muted",children:[jsx("span",{className:"text-sm font-medium text-foreground",children:E("predict.trade.sellContracts")}),jsxs("div",{className:"flex items-center gap-x-2",children:[[25,50].map(I=>{let _e=Math.pow(10,w);return jsxs("button",{type:"button",onClick:()=>{te(Math.floor(M*I/100*_e)/_e);},className:"rounded px-1.5 py-0.5 bg-content2 hover:bg-content3 transition-colors cursor-pointer text-text-muted hover:text-foreground font-medium",children:[I,"%"]},I)}),jsx("button",{type:"button",onClick:se,className:"rounded px-1.5 py-0.5 bg-content2 hover:bg-content3 transition-colors cursor-pointer text-text-muted hover:text-foreground font-medium",children:E("common.all")})]})]}),jsx(StyledInput,{"aria-label":E("predict.trade.sellQuantity"),fullWidth:true,placeholder:"0",radius:"lg",size:"lg",inputMode:"decimal",value:Ue,onChange:I=>Ne(I.target.value),onFocus:()=>{C.current=true;},onBlur:()=>{C.current=false,qe(isNaN(i)?"":String(i));},classNames:{inputWrapper:"bg-content2 data-[hover=true]:bg-content2 group-data-[focus=true]:bg-content2 h-14 min-h-14",input:"text-lg"}}),st&&g.length>0&&jsx("div",{className:"flex flex-col gap-y-0.5",children:g.map(I=>jsx("span",{className:"text-xs text-danger",children:I},I))})]}),jsxs("div",{className:"flex flex-col gap-y-1.5 border-l-2 border-default-300 pl-3 text-sm text-text-muted",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.totalShares")}),jsx("span",{className:"tabular-nums text-foreground",children:N?"\u2013":`${be(k,w).toFixed(w)}${E("predict.trade.sharesUnit")}`})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.activeOrders")}),jsx("span",{className:"tabular-nums text-warning",children:N?"\u2013":P>0?`-${be(P,w).toFixed(w)}${E("predict.trade.sharesUnit")}`:`0${E("predict.trade.sharesUnit")}`})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.availableShares")}),jsx("span",{className:"tabular-nums text-success font-medium",children:N?"\u2013":`${be(M,w).toFixed(w)}${E("predict.trade.sharesUnit")}`})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.estReturn")}),jsx("span",{className:"tabular-nums text-foreground",children:!isNaN(i)&&i>0?`$${d.toFixed(2)}`:"\u2013"})]})]}),jsxs("div",{className:"flex flex-col gap-y-2",children:[jsxs("div",{className:"flex items-center justify-between text-sm",children:[jsxs("button",{type:"button",onClick:()=>at(I=>!I),className:"flex items-center gap-x-1 text-text-muted hover:text-foreground cursor-pointer transition-colors",children:[jsx("span",{children:E("predict.trade.odds")}),jsx(ChevronDownIcon,{className:cn$1("h-3.5 w-3.5 transition-transform",ve&&"rotate-180")})]}),jsx("span",{className:"text-foreground font-medium tabular-nums",children:G&&Number.isFinite(a)?Yt:Qe!=null?E("predict.trade.chance",{percent:Qe}):_o})]}),ve&&jsxs("div",{className:"flex flex-col gap-y-1.5 border-l-2 border-default-300 pl-3 text-sm text-text-muted",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.numContracts")}),jsx("span",{className:"tabular-nums text-foreground",children:!isNaN(i)&&i>0?Nr(i):_o})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.totalSize")}),jsx("span",{className:"tabular-nums text-foreground",children:We?`$${l.toFixed(2)}`:_o})]}),(p??0)>0&&jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.estFee")}),jsx("span",{className:"tabular-nums text-foreground",children:`$${(p??0).toFixed(2)}`})]}),jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.estReturnAfterFees")}),jsx("span",{className:"tabular-nums text-foreground",children:We?`$${d.toFixed(2)}`:_o})]}),(p??0)>0&&jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{children:E("predict.trade.effectiveOdds")}),jsx("span",{className:"tabular-nums text-foreground",children:xe})]})]})]}),n==="limit"&&b&&jsxs("div",{className:"flex flex-col gap-y-2",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{className:"text-sm font-medium text-primary",children:E("predict.trade.setExpiration")}),jsx(StyledSwitch,{size:"sm",color:"primary",isSelected:R,onValueChange:he,"aria-label":E("predict.trade.setExpiration")})]}),R&&jsxs(Fragment,{children:[jsx(Select,{"aria-label":E("predict.trade.setExpiration"),selectedKeys:[A],onSelectionChange:I=>{let _e=Array.from(I)[0];_e&&Pe(_e);},size:"sm",radius:"lg",classNames:{trigger:"bg-content2 data-[hover=true]:bg-content2 min-h-10",value:"text-sm"},children:hf.map(I=>jsx(SelectItem,{children:E(vf[I])},I))}),A==="custom"&&jsxs("div",{className:"flex gap-x-2",children:[jsx(StyledNumberInput,{"aria-label":E("predict.trade.durationAmount"),size:"sm",radius:"lg",value:isNaN(X)?void 0:X,onValueChange:pt,minValue:1,step:1,formatOptions:yf,classNames:{base:"flex-1",inputWrapper:"bg-content2 data-[hover=true]:bg-content2 group-data-[focus=true]:bg-content2 min-h-10",input:"text-sm"}}),jsx(Select,{"aria-label":E("predict.trade.durationUnit"),selectedKeys:[L],onSelectionChange:I=>{let _e=Array.from(I)[0];_e&&Ve(_e);},size:"sm",radius:"lg",classNames:{base:"w-32",trigger:"bg-content2 data-[hover=true]:bg-content2 min-h-10",value:"text-sm"},children:xf.map(I=>jsx(SelectItem,{children:E(bf[I])},I))})]})]})]}),jsx(Button,{color:"secondary",fullWidth:true,radius:"lg",size:"lg",isDisabled:St||mt&&!Me&&(N||c||!We||m),isLoading:St||mt&&!Me&&(m||N||c),spinner:jsx(Spinner,{size:"sm",color:"current"}),onPress:Lt,children:Ce})]}),jsx(Eo,{isOpen:we.isOpen,onClose:we.onClose,kycUrl:v})]})}function Io({event:e,market:t,variant:r,initialOutcome:o,initialPositionSide:n,chain:i,slippageBps:s,onOutcomeChange:a,onSetupRequired:l,onSuccess:p,oddsFormatter:d,outcomeLabels:c}){let{outcome:m,orderType:u,quantity:f,limitPrice:g,effectivePrice:b,grossReturn:h,estimatedFee:S,estimatedReturn:x,pricePerShare:y,isMarketDataLoading:v,isSubmitting:k,authStatus:P,validation:M,supportsLimitOrder:N,kycRequired:w,needsKyc:R,needsSetup:A,kycUrl:X,totalShares:L,activeOrderShares:G,availableShares:U,isAvailableLoading:oe,precision:W,expirationEnabled:te,expirationPreset:ne,customDuration:se,customDurationUnit:he,setOutcome:Pe,setOrderType:pt,setQuantity:Ve,setLimitPrice:Be,setSellAll:E,setExpirationEnabled:st,setExpirationPreset:He,setCustomDuration:ve,setCustomDurationUnit:at,submit:we}=Xi({market:t,initialOutcome:o,initialPositionSide:n,slippageBps:s,onSuccess:p}),Ue=useAuthCallback(we),qe=useCallback(z=>{Pe(z),a?.(z);},[Pe,a]),C=useMemo(()=>e?un(e):void 0,[e]),O=useMemo(()=>pn(t,{yesBid:m==="yes"?y:void 0,noBid:m==="no"?y:void 0}),[t,m,y]);return jsx(es,{event:C,market:O,variant:r,outcome:m,orderType:u,quantity:f,limitPrice:g,effectivePrice:b,grossReturn:h,estimatedFee:S,estimatedReturn:x,isMarketDataLoading:v,isSubmitting:k,authStatus:P,isValid:M.isValid,validationErrors:M.errors,supportsLimitOrder:N,kycRequired:w,needsKyc:R,needsSetup:A,onSetupRequired:l,kycUrl:X,totalShares:L,activeOrderShares:G,availableShares:U,isAvailableLoading:oe,precision:W,expirationEnabled:te,expirationPreset:ne,customDuration:se,customDurationUnit:he,oddsFormatter:d,outcomeLabels:c,onOutcomeChange:qe,onOrderTypeChange:pt,onQuantityChange:Ve,onLimitPriceChange:Be,onSellAll:E,onExpirationEnabledChange:st,onExpirationPresetChange:He,onCustomDurationChange:ve,onCustomDurationUnitChange:at,onSubmit:Ue})}var En="predict-sell";function ts({id:e=En}){return jsx(AsyncModal,{id:e,children:t=>jsx(Rf,{...t})})}function Rf({params:e,isOpen:t,onOpenChange:r}){let{t:o}=useTranslation(),{isMobile:n}=useScreen();return e?jsx(StyledModal,{isOpen:t,onOpenChange:r,size:n?"lg":"md",backdrop:"opaque",hideCloseButton:true,classNames:{base:THEMED_MODAL_BASE_CLASS,body:"!p-0"},children:jsx(ModalContent,{children:jsxs("div",{className:n?"":"p-2",children:[jsx(Io,{event:e.event,market:e.market,initialOutcome:e.initialOutcome,initialPositionSide:e.initialPositionSide,chain:e.chain,slippageBps:e.slippageBps,onSetupRequired:e.onSetupRequired,onSuccess:()=>r(false),variant:"flat"}),jsx("div",{className:"px-4 pb-4",children:jsx("button",{type:"button",onClick:()=>r(false),className:"w-full h-12 rounded-xl text-sm font-medium text-text-secondary hover:text-text-primary hover:bg-surface-strong/50 transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:o("common.cancel")})})]})})}):null}var ns=40,Tn=36,Fo=480,is=Fo-Tn;function ss({event:e,walletAddress:t,onCancelOrder:r}){let{t:o}=useTranslation(),[n,i]=useState("positions"),s=useMemo(()=>e.markets?.map(c=>c.slug)??[],[e.markets]),{data:a}=usePositionsMulti({kalshi_user:e.source==="kalshi"?t:void 0,polymarket_user:e.source==="polymarket"?t:void 0}),l=useMemo(()=>!a?.positions||!t?0:s.length===0?a.positions.length:a.positions.filter(c=>c.market&&s.includes(c.market.slug)).length,[a?.positions,s,t]),d=[{key:"positions",label:l>0?`${o("predict.positions.title")} (${l})`:o("predict.positions.title")},{key:"orders",label:o("predict.openOrders.title")},{key:"trades",label:o("predict.tradeHistory.title")}];return jsxs("div",{className:"flex flex-col gap-y-2 mt-6 px-1 lg:px-4",children:[jsx("div",{className:"flex items-center gap-x-1 border-b border-border",children:d.map(c=>jsx("button",{type:"button",onClick:()=>i(c.key),className:cn$1("px-3 py-2 text-sm font-medium transition-colors cursor-pointer",n===c.key?"text-foreground border-b-2 border-primary":"text-text-muted hover:text-foreground"),children:c.label},c.key))}),t?jsxs("div",{style:{height:Fo},children:[n==="positions"&&jsx(Ff,{source:e.source,walletAddress:t,marketSlugs:s}),n==="orders"&&jsx(Hf,{source:e.source,walletAddress:t,marketSlugs:s,onCancelOrder:r}),n==="trades"&&jsx(zf,{source:e.source,walletAddress:t})]}):jsx("div",{className:"flex items-center justify-center text-sm text-text-muted",style:{height:Fo},children:o("predict.trade.connectWallet")})]})}function Ff({source:e,walletAddress:t,marketSlugs:r}){let{t:o}=useTranslation(),{data:n,isLoading:i}=usePositionsMulti({kalshi_user:e==="kalshi"?t:void 0,polymarket_user:e==="polymarket"?t:void 0}),s=useMemo(()=>n?.positions?r.length===0?n.positions:n.positions.filter(a=>a.market&&r.includes(a.market.slug)):[],[n?.positions,r]);return i?jsx(ls,{}):s.length===0?jsx(as,{message:o("predict.positions.empty")}):jsxs("div",{className:"flex flex-col h-full",children:[jsxs("div",{className:"flex items-center text-text-muted text-xs lg:text-sm font-normal shrink-0",style:{height:Tn},children:[jsx("div",{className:"flex-[3] min-w-0 pr-2 whitespace-nowrap",children:o("predict.positions.event")}),jsx("div",{className:"flex-1 pr-2 text-right whitespace-nowrap",children:o("predict.positions.totalSize")}),jsx("div",{className:"flex-1 pr-2 text-right whitespace-nowrap",children:o("predict.positions.value")}),jsx("div",{className:"flex-1 pr-2 text-right whitespace-nowrap",children:o("predict.positions.avgPrice")}),jsx("div",{className:"flex-1 pr-2 text-right whitespace-nowrap",children:o("predict.positions.markPrice")}),jsx("div",{className:"flex-[1.5] pr-2 text-right whitespace-nowrap",children:o("predict.positions.pnl")}),jsx("div",{className:"flex-1 pr-2 text-right whitespace-nowrap",children:o("predict.positions.payoutIfRight")}),jsx("div",{className:"flex-[1.5] pr-2 text-right whitespace-nowrap",children:o("predict.positions.estSettlement")}),jsx("div",{className:"w-16 shrink-0"})]}),jsx(List,{style:{height:is},rowComponent:Bf,rowCount:s.length,rowHeight:ns,rowProps:{positions:s,closeLabel:o("predict.positions.close")}})]})}function Bf({index:e,style:t,positions:r,closeLabel:o}){let n=r[e];if(!n)return null;let i=n.pnl??0,s=n.pnl_percent??0,a=n.avg_price??0,l=n.current_price??0,p=i>0?"text-success":i<0?"text-danger":"text-foreground",d=i>0?"+":"",c=n.market?.outcomes?.[0]?.label??n.market?.question??"\u2014",m=n.side,u=n.size,f=n.size*l,g=n.market?.end_at?Vf(n.market.end_at):"\u2014";return jsxs("div",{style:t,className:"flex items-center border-b border-border/50 hover:bg-content2/40 transition-colors text-xs lg:text-sm",children:[jsx("div",{className:"flex-[3] min-w-0 pr-2",children:jsxs("div",{className:"flex flex-col gap-y-0.5",children:[jsx("span",{className:"text-foreground truncate font-medium",children:c}),jsx("span",{className:cn$1("text-[10px] font-medium",m.toLowerCase()==="yes"?"text-primary":"text-secondary"),children:m})]})}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground whitespace-nowrap",children:n.size}),jsxs("div",{className:"flex-1 pr-2 text-right font-mono text-foreground whitespace-nowrap",children:["$",f.toFixed(2)]}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground whitespace-nowrap",children:Cn(a)}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground whitespace-nowrap",children:Cn(l)}),jsxs("div",{className:cn$1("flex-[1.5] pr-2 text-right font-mono whitespace-nowrap",p),children:[d,"$",Math.abs(i).toFixed(2),jsxs("span",{className:"text-[10px] ml-0.5 opacity-70",children:["(",d,s.toFixed(1),"%)"]})]}),jsxs("div",{className:"flex-1 pr-2 text-right font-mono text-foreground whitespace-nowrap",children:["$",u.toFixed(2)]}),jsx("div",{className:"flex-[1.5] pr-2 text-right text-text-muted whitespace-nowrap",children:g}),jsx("div",{className:"w-16 shrink-0 text-right",children:jsx("button",{type:"button",className:"text-xs text-text-muted hover:text-foreground cursor-pointer transition-colors rounded px-2 py-0.5 border border-border hover:border-foreground/40",children:o})})]})}function Hf({source:e,walletAddress:t,marketSlugs:r,onCancelOrder:o}){let{t:n}=useTranslation(),{data:i,isLoading:s,fetchNextPage:a,hasNextPage:l}=useInfiniteOrders({source:e,wallet_address:t}),p=useCancelOrder(),d=useMemo(()=>{let h=i?.pages?.flatMap(y=>y.items)??[],S=new Set(["live","open","submitted","pending"]),x=h.filter(y=>S.has(y.status));return r.length>0&&(x=x.filter(y=>y.market_id&&r.includes(y.market_id))),x},[i?.pages,r]),c=useCallback(h=>{o?o(h.id):p.mutate({source:h.source,id:h.id});},[o,p]),m=d.length,u=m+(l?1:0),f=useCallback(h=>h<m,[m]),g=useCallback(async()=>{await a();},[a]),b=useInfiniteLoader({isRowLoaded:f,loadMoreRows:g,rowCount:u,threshold:5});return s?jsx(ls,{}):d.length===0&&!l?jsx(as,{message:n("predict.openOrders.empty")}):jsxs("div",{className:"flex flex-col h-full",children:[jsxs("div",{className:"flex items-center text-text-muted text-xs lg:text-sm font-normal shrink-0",style:{height:Tn},children:[jsx("div",{className:"w-16 shrink-0 pr-2",children:n("predict.openOrders.side")}),jsx("div",{className:"flex-1 pr-2",children:n("predict.openOrders.outcome")}),jsx("div",{className:"flex-1 pr-2",children:n("predict.openOrders.type")}),jsx("div",{className:"flex-1 pr-2 text-right",children:n("predict.openOrders.price")}),jsx("div",{className:"flex-1 pr-2 text-right",children:n("predict.openOrders.filled")}),jsx("div",{className:"w-20 shrink-0 pr-2",children:n("predict.openOrders.status")}),jsx("div",{className:"w-16 shrink-0"})]}),jsx(List,{style:{height:is},onRowsRendered:b,rowComponent:Uf,rowCount:u,rowHeight:ns,rowProps:{orders:d,itemCount:m,onCancel:c,isCancelling:p.isPending,cancelLabel:n("predict.openOrders.cancel")}})]})}function Uf({index:e,style:t,orders:r,itemCount:o,onCancel:n,isCancelling:i,cancelLabel:s}){let{t:a}=useTranslation();if(e>=o)return jsx("div",{style:t,className:"flex justify-center items-center",children:jsx(Spinner,{size:"sm"})});let l=r[e];if(!l)return null;let p=l.side==="BUY";return jsxs("div",{style:t,className:"flex items-center border-b border-border/50 text-xs lg:text-sm",children:[jsx("div",{className:"w-16 shrink-0 pr-2",children:jsx("span",{className:cn$1("inline-block rounded px-1.5 py-0.5 text-[10px] font-medium",p?"bg-primary/10 text-primary":"bg-danger/10 text-danger"),children:l.side})}),jsx("div",{className:"flex-1 pr-2 text-foreground capitalize",children:l.outcome??"\u2014"}),jsx("div",{className:"flex-1 pr-2 text-text-muted capitalize",children:l.order_type?.toLowerCase()==="market"?a("predict.trade.market"):a("predict.trade.limit")}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:l.price?Cn(parseFloat(l.price)):"\u2014"}),jsxs("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:[l.size_matched??"0","/",l.original_size??"\u2014"]}),jsx("div",{className:"w-20 shrink-0 pr-2",children:jsx(Wf,{status:l.status})}),jsx("div",{className:"w-16 shrink-0 text-right",children:jsx("button",{type:"button",onClick:()=>n(l),disabled:i,className:"text-[10px] text-danger hover:text-danger/80 cursor-pointer disabled:opacity-50 transition-colors",children:i?jsx(Spinner,{size:"sm"}):s})})]})}function Wf({status:e}){return jsx("span",{className:cn$1("inline-block rounded px-1.5 py-0.5 text-[10px] font-medium capitalize",{live:"bg-success/10 text-success",open:"bg-success/10 text-success",submitted:"bg-warning/10 text-warning",pending:"bg-warning/10 text-warning",matched:"bg-primary/10 text-primary",cancelled:"bg-text-muted/10 text-text-muted",failed:"bg-danger/10 text-danger",expired:"bg-text-muted/10 text-text-muted"}[e]??"bg-text-muted/10 text-text-muted"),children:e})}function zf({source:e,walletAddress:t}){let{t:r}=useTranslation(),{data:o,isLoading:n,fetchNextPage:i,hasNextPage:s}=useInfiniteTrades({source:e,wallet:t,limit:50}),a=useMemo(()=>o?.pages?.flatMap(u=>u.items)??[],[o?.pages]),l=a.length,p=l+(s?1:0),d=useCallback(u=>u<l,[l]),c=useCallback(async()=>{await i();},[i]),m=useInfiniteLoader({isRowLoaded:d,loadMoreRows:c,rowCount:p,threshold:5});return n?jsx(ls,{}):a.length===0&&!s?jsx(as,{message:r("predict.tradeHistory.empty")}):jsxs("div",{className:"flex flex-col h-full",children:[jsxs("div",{className:"flex items-center text-text-muted text-xs lg:text-sm font-normal shrink-0",style:{height:Tn},children:[jsx("div",{className:"w-16 shrink-0 pr-2",children:r("predict.tradeHistory.side")}),jsx("div",{className:"flex-1 pr-2",children:r("predict.tradeHistory.outcome")}),jsx("div",{className:"flex-1 pr-2 text-right",children:r("predict.tradeHistory.price")}),jsx("div",{className:"flex-1 pr-2 text-right",children:r("predict.tradeHistory.qty")}),jsx("div",{className:"flex-1 pr-2 text-right",children:r("predict.tradeHistory.total")}),jsx("div",{className:"flex-[1.5] pr-2 text-right",children:r("predict.tradeHistory.time")})]}),jsx(List,{style:{height:is},onRowsRendered:m,rowComponent:$f,rowCount:p,rowHeight:ns,rowProps:{trades:a,itemCount:l}})]})}function $f({index:e,style:t,trades:r,itemCount:o}){if(e>=o)return jsx("div",{style:t,className:"flex justify-center items-center",children:jsx(Spinner,{size:"sm"})});let n=r[e];if(!n)return null;let i=n.side?.toUpperCase()==="BUY",s=Kf(n.timestamp),a=n.price??0,l=n.usd_size??0;return jsxs("div",{style:t,className:"flex items-center border-b border-border/50 text-xs lg:text-sm",children:[jsx("div",{className:"w-16 shrink-0 pr-2",children:jsx("span",{className:cn$1("inline-block rounded px-1.5 py-0.5 text-[10px] font-medium",i?"bg-primary/10 text-primary":"bg-danger/10 text-danger"),children:n.side})}),jsx("div",{className:"flex-1 pr-2 text-foreground capitalize",children:n.outcome??"\u2014"}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:Cn(a)}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:n.size}),jsxs("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:["$",l.toFixed(2)]}),jsx("div",{className:"flex-[1.5] pr-2 text-right text-text-muted whitespace-nowrap",children:s})]})}function as({message:e}){return jsx("div",{className:"flex items-center justify-center text-sm text-text-muted",style:{height:Fo},children:e})}function ls(){return jsx("div",{className:"flex flex-col gap-y-2 py-3 animate-pulse",style:{height:Fo},children:Array.from({length:6}).map((e,t)=>jsx(Skeleton,{className:"h-8 w-full rounded-md"},t))})}function Cn(e){let t=e*100;return t<1&&t>0?"< 1\xA2":`${t.toFixed(1)}\xA2`}function Kf(e){let t=new Date(e*1e3),r=(t.getMonth()+1).toString().padStart(2,"0"),o=t.getDate().toString().padStart(2,"0"),n=t.getHours().toString().padStart(2,"0"),i=t.getMinutes().toString().padStart(2,"0");return `${r}/${o} ${n}:${i}`}function Vf(e){try{return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})}catch{return "\u2014"}}var hl=`
75
75
  @keyframes detailShimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}
76
- `,vl={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:"detailShimmer 1.8s ease-in-out infinite",borderRadius:6};function ye(e){return {...vl,animationDelay:`${e}ms`}}function ro({marketCount:e=4,showBack:t}){return jsxs(Fragment,{children:[jsx("style",{children:hl}),jsxs("div",{style:{display:"flex",flexDirection:"column",width:"100%",gap:20},children:[t&&jsx("div",{style:{height:20}}),jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[jsx("div",{style:{...vl,width:64,height:64,borderRadius:10,flexShrink:0}}),jsxs("div",{style:{flex:1,minWidth:0,display:"flex",flexDirection:"column",gap:8},children:[jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[jsx("div",{style:{...ye(0),height:14,width:48}}),jsx("div",{style:{...ye(30),height:14,width:40}}),jsx("div",{style:{...ye(60),height:14,width:40}})]}),jsx("div",{style:{...ye(80),height:20,width:"80%",maxWidth:384,borderRadius:4}})]})]}),jsx("div",{style:{...ye(100),height:16,width:192}}),jsxs("div",{style:{display:"flex",flexDirection:"column",gap:12},children:[jsxs("div",{style:{display:"flex",alignItems:"center",gap:16},children:[jsx("div",{style:{...ye(120),height:16,width:96}}),jsx("div",{style:{...ye(140),height:16,width:80}})]}),jsx("div",{style:{...ye(160),height:300,width:"100%",borderRadius:12}}),jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[jsx("div",{style:{...ye(180),height:16,width:80}}),jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[jsx("div",{style:{...ye(200),height:28,width:200,borderRadius:8}}),jsx("div",{style:{...ye(220),height:28,width:112,borderRadius:8}})]})]})]}),jsxs("div",{style:{display:"flex",flexDirection:"column"},children:[jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"8px 0"},children:jsx("div",{style:{...ye(240),height:14,width:56}})}),Array.from({length:e}).map((r,o)=>jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"10px 0",borderBottom:"1px solid var(--color-border-subtle)"},children:[jsx("div",{style:{...ye(260+o*40),width:28,height:28,borderRadius:8,flexShrink:0}}),jsxs("div",{style:{flex:1,minWidth:0,display:"flex",flexDirection:"column",gap:4},children:[jsx("div",{style:{...ye(280+o*40),height:14,width:o%2===0?192:160}}),jsx("div",{style:{...ye(300+o*40),height:10,width:64}})]}),jsx("div",{style:{...ye(320+o*40),height:16,width:40}}),jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[jsx("div",{style:{...ye(340+o*40),height:32,width:80,borderRadius:8}}),jsx("div",{style:{...ye(360+o*40),height:32,width:80,borderRadius:8}})]})]},o))]}),jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[jsx("div",{style:{...ye(400),height:16,width:64}}),jsx("div",{style:{...ye(420),height:14,width:"100%"}}),jsx("div",{style:{...ye(440),height:14,width:"80%"}}),jsx("div",{style:{...ye(460),height:14,width:"60%"}})]})]})]})}function cs(){return jsxs(Fragment,{children:[jsx("style",{children:hl}),jsxs("div",{style:{display:"flex",flexDirection:"column",gap:12,borderRadius:14,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content2) / 0.4)",padding:16},children:[jsx("div",{style:{...ye(0),height:40,width:"100%",borderRadius:8}}),jsx("div",{style:{...ye(60),height:96,width:"100%",borderRadius:8}}),jsx("div",{style:{...ye(120),height:40,width:"100%",borderRadius:8}})]})]})}function bl(e,t,r){return e===t||!r?null:{marketSlug:t,outcomeKey:r}}function yl(e,t){return {marketSlug:e,outcomeKey:t}}function kl(e){return e.slice(0,2).map((t,r)=>({catalogOutcome:t,tradeOutcome:r===0?"yes":"no"}))}function Ze(e,t){return `${e}:${t}`}function Sl({marketDataEnabled:e,marketSlug:t,outcomeKey:r,books:o}){return e?{legacyEnabled:false,orderbook:o?.get(Ze(t,r))??null}:{legacyEnabled:true,orderbook:void 0}}var wl="var(--color-bullish)",El="var(--color-bearish)";function oo(e){let t=Math.abs(e);return t>=1e9?`${parseFloat((e/1e9).toFixed(2))}B`:t>=1e6?`${parseFloat((e/1e6).toFixed(2))}M`:t>=1e3?`${parseFloat((e/1e3).toFixed(2))}K`:e.toLocaleString()}function Yf(e,t){return e<=0||t<=0?0:Math.pow(e/t,.3)}function qf(e,t){let r=new Float64Array(101),o=new Float64Array(101);for(let u of e){let f=Math.round(u.price*100);f>=0&&f<=100&&(r[f]+=u.quantity);}for(let u of t){let f=Math.round(u.price*100);f>=0&&f<=100&&(o[f]+=u.quantity);}let n=0,i=0,s=new Float64Array(101),a=new Float64Array(101);for(let u=100;u>=0;u--)n+=r[u],i+=r[u]*u/100,s[u]=n,a[u]=i;let l=0,p=0,d=new Float64Array(101),c=new Float64Array(101);for(let u=0;u<=100;u++)l+=o[u],p+=o[u]*u/100,d[u]=l,c[u]=p;let m=Math.max(s[0]??0,d[100]??0);return Array.from({length:101},(u,f)=>{let g=s[f]>0,b=d[f]>0,h=s[f]||d[f],S=r[f]>0||o[f]>0;return {priceCents:f,displayHeight:Yf(h,m),opacity:h>0?S?1:.5:0,isBid:g,isAsk:b,bidCumTotal:s[f],askCumTotal:d[f],bidCumCost:a[f],askCumCost:c[f]}})}function Qf({info:e}){let{t}=useTranslation(),r=e.isBid?wl:El,o=e.leftPct>65?void 0:`${e.leftPct}%`,n=e.leftPct>65?`${100-e.leftPct}%`:void 0;return jsxs("div",{style:{position:"absolute",top:8,left:o,right:n,zIndex:10,background:"rgba(17,24,39,0.95)",border:"1px solid rgba(255,255,255,0.08)",borderRadius:8,padding:"8px 12px",fontSize:12,color:"var(--color-text-primary)",minWidth:140,pointerEvents:"none"},children:[jsx("div",{style:{marginBottom:4,fontWeight:600},children:t("predict.orderBook.depthToPrice",{price:e.priceCents})}),jsx("div",{style:{color:r},children:t("predict.orderBook.depthContracts",{amount:oo(Math.round(e.cumTotal))})}),jsxs("div",{style:{color:r},children:["$",oo(Math.round(e.cumCost))]})]})}var Xf=memo(function({slot:t,onEnter:r,onLeave:o}){let n=useRef(null),i=t.isBid||t.isAsk,s=t.isBid?wl:t.isAsk?El:void 0;return jsx("div",{style:{position:"absolute",left:`${t.priceCents}%`,width:"1%",height:"100%",boxSizing:"border-box",borderRight:t.priceCents<100?"1px solid transparent":"none",cursor:i?"crosshair":"default"},onMouseEnter:()=>r(t,n.current),onMouseLeave:o,children:i&&jsx("div",{ref:n,style:{position:"absolute",bottom:0,left:0,width:"100%",height:`${t.displayHeight*100}%`,backgroundColor:s,opacity:t.opacity}})})}),Jf=[0,10,20,30,40,50,60,70,80,90,100];function Zf(){return jsx("div",{className:"relative flex h-6 items-center border-b border-t border-border px-1",style:{background:"rgba(0,0,0,0.15)"},children:Jf.map(e=>jsx("span",{className:"absolute text-text-muted font-normal",style:{fontSize:10,left:`${e}%`,transform:e===0?"translateX(0px)":e===100?"translateX(-100%)":"translateX(-50%)"},children:e},e))})}function us({bids:e,asks:t}){let{t:r}=useTranslation(),o=useMemo(()=>qf(e,t),[e,t]),n=useMemo(()=>{let c=e.length>0?Math.max(...e.map(u=>u.price)):0,m=t.length>0?Math.min(...t.map(u=>u.price)):1;return Math.round((c+m)/2*100)},[e,t]),i=useMemo(()=>o.some(c=>c.isBid||c.isAsk),[o]),[s,a]=useState(null),l=useRef(null),p=useCallback((c,m)=>{l.current&&(l.current.style.filter=""),m?(m.style.filter="brightness(1.5)",l.current=m):l.current=null,c.isBid||c.isAsk?a({priceCents:c.priceCents,isBid:c.isBid,cumTotal:c.isBid?c.bidCumTotal:c.askCumTotal,cumCost:c.isBid?c.bidCumCost:c.askCumCost,leftPct:c.priceCents}):a(null);},[]),d=useCallback(()=>{l.current&&(l.current.style.filter="",l.current=null),a(null);},[]);return i?jsxs("div",{style:{display:"flex",flexDirection:"column",width:"100%",height:"100%",userSelect:"none",overflow:"hidden"},children:[jsxs("div",{style:{flex:1,position:"relative",width:"100%",overflow:"hidden"},children:[n>0&&jsx("div",{style:{position:"absolute",left:`${n}%`,top:0,bottom:0,width:1,backgroundImage:"repeating-linear-gradient(to bottom, #6b7280 0, #6b7280 4px, transparent 4px, transparent 8px)",zIndex:1,pointerEvents:"none"}}),s&&jsx(Qf,{info:s}),o.map(c=>jsx(Xf,{slot:c,onEnter:p,onLeave:d},c.priceCents))]}),jsx(Zf,{})]}):jsx("div",{style:{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--color-text-muted)",fontSize:13},children:r("predict.orderBook.noData")})}function _l(e){let t=e*100,r=Math.round(t*10)/10;return Number.isInteger(r)?`${r}\xA2`:`${r.toFixed(1)}\xA2`}function Tl(){let{t:e}=useTranslation();return jsx("div",{className:"absolute inset-0 flex items-center justify-center text-text-muted text-xs",children:jsx("span",{children:e("predict.orderBook.loading")})})}function fs({market:e,outcome:t="yes",initialViewMode:r="depth",className:o,oddsFormatter:n,enabled:i=true,orderbook:s}){let{t:a}=useTranslation(),[l,p]=useState(r),d=n??_l,c=e.source,{data:m,isLoading:u,isFetching:f,refetch:g}=useRealtimeOrderbook({slug:e.slug,source:c,outcome:t},{enabled:i}),b=s!==void 0,h=b?s:m,S=!b&&u,x=!b&&f,y=useMemo(()=>(h?.bids??[]).map(N=>({price:N.price,quantity:N.size})),[h?.bids]),v=useMemo(()=>(h?.asks??[]).map(N=>({price:N.price,quantity:N.size})),[h?.asks]),k=useMemo(()=>y.length>0?Math.max(...y.map(N=>N.price)):null,[y]),P=useMemo(()=>v.length>0?Math.min(...v.map(N=>N.price)):null,[v]),M=useMemo(()=>{if(k==null||P==null)return null;let N=(P-k)*100;return Math.round(N*10)/10},[k,P]);return jsxs("div",{className:cn$1("flex flex-col",o??"h-[262px]"),children:[jsxs("div",{className:"flex h-9 items-center border-b border-border px-1 text-xs",children:[jsx("span",{className:"flex-1 text-left text-text-muted",children:M!=null?`${a("predict.orderBook.spread")}: ${Number.isInteger(M)?`${M}\xA2`:`${M.toFixed(1)}\xA2`}`:null}),jsxs("span",{className:"flex flex-1 items-center justify-center gap-x-1 whitespace-nowrap",children:[k!=null&&jsxs("span",{style:{color:"var(--color-bullish)"},children:[a("predict.trade.bestBid"),": ",d(k)]}),k!=null&&P!=null&&jsx("span",{className:"text-text-muted",children:"|"}),P!=null&&jsxs("span",{style:{color:"var(--color-bearish)"},children:[a("predict.trade.bestAsk"),": ",d(P)]})]}),jsxs("div",{className:"flex flex-1 items-center justify-end gap-x-2",children:[jsx("button",{type:"button",title:a(l==="depth"?"predict.orderBook.tableView":"predict.orderBook.depthView"),onClick:()=>p(N=>N==="depth"?"table":"depth"),className:"flex items-center text-text-muted transition-colors cursor-pointer hover:text-foreground",children:l==="depth"?jsx(OrderbookTableIcon,{className:"h-4 w-4"}):jsx(OrderbookDepthIcon,{className:"h-4 w-4"})}),jsx("button",{type:"button",title:a("predict.orderBook.refresh"),onClick:()=>{b||g();},disabled:b||x,className:cn$1("flex items-center text-text-muted transition-colors cursor-pointer hover:text-foreground disabled:cursor-default disabled:opacity-50",x&&"animate-spin"),children:jsx(RefreshIcon,{className:"h-4 w-4"})})]})]}),jsxs("div",{className:"relative flex-1 min-h-0 overflow-hidden",children:[l==="depth"&&jsx(Fragment,{children:S?jsx(Tl,{}):jsx(us,{bids:y,asks:v})}),l==="table"&&jsx(Fragment,{children:S?jsx(Tl,{}):jsx(ig,{bids:y,asks:v,bestBid:k??void 0,bestAsk:P??void 0,spread:M??void 0,oddsFormatter:n})})]})]})}var ps=4,ng=8;function ig({bids:e,asks:t,spread:r,oddsFormatter:o}){let{t:n}=useTranslation(),[i,s]=useState(false),a=i?ng:ps,l=t.length>ps||e.length>ps,p=useMemo(()=>[...t].sort((u,f)=>u.price-f.price).slice(0,a).reverse(),[t,a]),d=useMemo(()=>[...e].sort((u,f)=>f.price-u.price).slice(0,a),[e,a]),c=useMemo(()=>{let u=[...p,...d].map(f=>f.quantity);return Math.max(...u,1)},[p,d]);return p.length===0&&d.length===0?jsx("div",{className:"flex items-center justify-center h-full text-xs text-text-muted",children:n("predict.orderBook.empty")}):jsxs("div",{className:"flex flex-col h-full overflow-y-auto text-xs font-mono select-none",children:[p.map(u=>jsx(Rl,{price:u.price,quantity:u.quantity,side:"ask",maxQty:c,oddsFormatter:o},`ask-${u.price}`)),jsxs("div",{className:"relative flex items-center justify-center gap-x-2 py-1 border-y border-border text-text-muted text-[10px]",children:[r!=null&&jsxs("span",{children:[n("predict.orderBook.spread"),":"," ",Number.isInteger(r)?`${r}\xA2`:`${r.toFixed(1)}\xA2`]}),l&&jsx("button",{type:"button",onClick:()=>s(u=>!u),className:"absolute right-2 text-[10px] text-text-muted transition-colors cursor-pointer hover:text-foreground",children:n(i?"predict.orderBook.collapse":"predict.orderBook.expand")})]}),d.map(u=>jsx(Rl,{price:u.price,quantity:u.quantity,side:"bid",maxQty:c,oddsFormatter:o},`bid-${u.price}`)),jsxs("div",{className:"grid grid-cols-3 px-2 pt-2 pb-0.5 text-[10px] text-text-muted border-t border-border",children:[jsx("span",{children:n("predict.orderBook.price")}),jsx("span",{className:"text-center",children:n("predict.orderBook.contracts")}),jsx("span",{className:"text-right",children:n("predict.orderBook.total")})]})]})}function Rl({price:e,quantity:t,side:r,maxQty:o,oddsFormatter:n}){let i=r==="ask",s=Math.min(t/o*100,100),a=i?"bg-negative/10":"bg-positive/10",l=i?"text-negative":"text-positive",p=oo(Math.round(t)),d=Math.round(t*e),c=`$${oo(d)}`;return jsxs("div",{className:"relative grid grid-cols-3 px-2 py-1 hover:bg-content2 transition-colors cursor-default",children:[jsx("div",{className:`absolute inset-y-0 left-0 ${a} transition-[width] duration-200`,style:{width:`${s}%`}}),jsx("span",{className:`relative z-10 ${l}`,children:n?n(e):_l(e)}),jsx("span",{className:"relative z-10 text-foreground text-center",children:p}),jsx("span",{className:"relative z-10 text-foreground text-right",children:c})]})}var Ln=new Map,gs=new Set,Dl=0;function Al(){Dl+=1,gs.forEach(e=>e());}function dg(e){return gs.add(e),()=>gs.delete(e)}function Il(){return Dl}function ug(e,t){return e?.bestAsk===t.bestAsk&&e?.bestBid===t.bestBid}function On(e){return e!=null&&e>0&&Number.isFinite(e)?e:void 0}function pg(e,t,r){if(!e||!t)return;let o={bestAsk:On(r.bestAsk),bestBid:On(r.bestBid)};if(o.bestAsk===void 0&&o.bestBid===void 0){_n(e,t);return}let n=Ze(e,t);ug(Ln.get(n),o)||(Ln.set(n,o),Al());}function Fl(e,t,r){!e||!t||!r||pg(e,t,{bestAsk:On(pickBestAsk(r,t)),bestBid:On(pickBestBid(r,t))});}function _n(e,t){if(!e||!t)return;let r=Ze(e,t);Ln.delete(r)&&Al();}function Bl(e){let t=useSyncExternalStore(dg,Il,Il);return useMemo(()=>{let r=new Map;for(let o of e){let n=Ze(o.slug,o.outcome),i=Ln.get(n);i!==void 0&&r.set(n,i);}return r},[e,t])}function In(e){return e.status==="closed"||e.status==="voided"?e.markets??[]:(e.markets??[]).filter(t=>t.status==="open")}var so=themeSemanticColors.text.muted,hs=class extends Component{state={error:null};static getDerivedStateFromError(t){return {error:t}}componentDidCatch(t,r){}render(){return this.state.error?jsxs("div",{style:{height:this.props.fallbackHeight??320,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:8,color:"var(--color-text-muted)",fontSize:13},children:[jsx(Translation,{children:t=>jsx("span",{children:t("predict.chart.unavailable")})}),jsx("span",{style:{fontSize:11,opacity:.7},children:this.state.error.message})]}):this.props.children}},Uo=4,Hl=["#22d3ee","#a3e635","#f97316","#f472b6","#a78bfa"];function wg(e,t){let r=new Date(e);return t===$.ONE_HOUR||t===$.SIX_HOURS||t===$.ONE_DAY?r.toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",hour12:false}):t===$.ALL?r.toLocaleDateString("en-US",{month:"numeric",day:"numeric"}):r.toLocaleDateString("en-US",{month:"short",day:"numeric"})}function Eg(e,t){let r=new Date(e);return t===$.ONE_HOUR||t===$.SIX_HOURS||t===$.ONE_DAY?r.toLocaleTimeString("en-US",{month:t===$.ONE_DAY?"short":void 0,day:t===$.ONE_DAY?"numeric":void 0,hour:"2-digit",minute:"2-digit",hour12:false}):t===$.ONE_MONTH||t===$.ALL?r.toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",hour12:false}):r.toLocaleDateString("en-US",{month:"short",day:"numeric"})}function Wl(e){return `${(e*100).toFixed(2)}%`}function Cg(e){if(!e)return;let t=Date.parse(e);return Number.isFinite(t)?t:void 0}function Tg(e,t,r){let o=r*1e3,n=t.map(a=>Cg(a.created_at)).filter(a=>a!=null),i=n.length>0?Math.min(...n):void 0,s=xi[e];if(s!=null){let a=o-s*1e3;return [i!=null?Math.max(i,a):a,o]}return [i??o-7*864e5,o]}function Rg([e,t]){if(!Number.isFinite(e)||!Number.isFinite(t)||t<=e)return [];let r=5,o=(t-e)/(r-1);return Array.from({length:r},(n,i)=>Math.round(e+o*i))}function Lg(e){switch(e){case $.ONE_HOUR:case $.SIX_HOURS:return 3e4;case $.ONE_DAY:return 6e4;case $.ONE_MONTH:case $.ALL:return 5*6e4;default:return 6e4}}function Og(e){return e.status==="open"||e.status==="pending"}var _g=[{range:$.ONE_HOUR,label:"1h"},{range:$.SIX_HOURS,label:"6h"},{range:$.ONE_DAY,label:"1D"},{range:$.ONE_MONTH,label:"1M"},{range:$.ALL,label:"ALL"}];function Ig({value:e,onChange:t}){return jsx("div",{style:{display:"flex",alignItems:"center",gap:2},children:_g.map(({range:r,label:o})=>{let n=r===e;return jsx("button",{onClick:()=>t(r),style:{padding:"2px 8px",border:"none",background:"transparent",color:n?"var(--color-text-primary)":"var(--color-text-muted)",fontWeight:n?700:400,fontSize:12,cursor:"pointer",borderRadius:4,letterSpacing:"0.02em",transition:"color 0.15s",userSelect:"none"},children:o},r)})})}function Dg(){let e=useRef(null),t=useRef(null),r=useCallback(n=>{let i=e.current,s=t.current;if(!i||!s)return;let a=i.getBoundingClientRect(),l=(n.clientX-a.left)/a.width*100;s.style.background=`linear-gradient(to right, transparent ${l}%, rgba(0,0,0,0.55) ${l}%)`,s.style.opacity="1";},[]),o=useCallback(()=>{t.current&&(t.current.style.opacity="0");},[]);return {wrapperRef:e,overlayRef:t,onMouseMove:r,onMouseLeave:o}}function Ag({active:e,payload:t,label:r,labelMap:o,allSeries:n,range:i}){if(!e||!n?.length)return null;let s=new Map;t?.forEach(l=>s.set(l.dataKey,l));let a=n.map(l=>s.get(l.slug)??{dataKey:l.slug,value:void 0,stroke:l.color,color:l.color});return jsxs("div",{style:{background:"rgba(10,10,10,0.92)",border:"1px solid rgba(255,255,255,0.1)",borderRadius:8,padding:"8px 12px",minWidth:180,backdropFilter:"blur(8px)",fontSize:12},children:[jsx("div",{style:{color:"var(--color-text-secondary)",marginBottom:6,fontWeight:500},children:typeof r=="number"?Eg(r,i):r}),a.map(l=>jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:3},children:[jsx("span",{style:{display:"inline-block",width:3,height:14,borderRadius:2,background:l.stroke??l.color,flexShrink:0}}),jsx("span",{style:{color:"var(--color-text-secondary)",flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",maxWidth:120},children:o.get(l.dataKey)??l.dataKey}),jsx("span",{style:{color:"var(--color-text-primary)",fontWeight:700,fontVariantNumeric:"tabular-nums"},children:l.value!=null?Wl(l.value):"--"})]},l.dataKey))]})}function Fg({onPayload:e,...t}){let{active:r,label:o,payload:n}=t;return useEffect(()=>{r&&e(o,n);},[r,o,e,n]),jsx(Ag,{...t})}function Bg({markets:e,selectedSlugs:t,colorMap:r,onToggle:o}){let{t:n}=useTranslation(),[i,s]=useState(false),a=useRef(null);useEffect(()=>{if(!i)return;function d(c){a.current&&!a.current.contains(c.target)&&s(false);}return document.addEventListener("mousedown",d),()=>document.removeEventListener("mousedown",d)},[i]);let l=t.length>=Uo,p=jsxs("div",{style:{display:"flex",alignItems:"center",gap:6,flex:1,minWidth:0},children:[jsx("div",{style:{display:"flex",gap:3,flexShrink:0},children:t.map(d=>jsx("span",{style:{width:8,height:8,borderRadius:"50%",background:r.get(d)??so,display:"inline-block"}},d))}),jsx("span",{style:{color:"#e5e7eb",fontSize:12,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:t.length===1?(()=>{let d=e.find(c=>c.slug===t[0]);return d?lr(d):n("predict.chart.singleMarket")})():n("predict.chart.marketCount",{selected:t.length,total:e.length})})]});return jsxs("div",{ref:a,style:{position:"relative",display:"inline-block",width:200},children:[jsxs("button",{onClick:()=>s(d=>!d),style:{display:"inline-flex",alignItems:"center",gap:6,padding:"5px 10px",borderRadius:8,border:"1px solid rgba(255,255,255,0.12)",background:"hsl(var(--heroui-foreground) / 0.05)",cursor:"pointer",width:"100%",userSelect:"none"},children:[p,jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",style:{flexShrink:0,transform:i?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s",color:"var(--color-text-muted)"},children:jsx("path",{d:"M2 4l4 4 4-4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]}),i&&jsxs("div",{style:{position:"absolute",top:"calc(100% + 4px)",left:0,zIndex:50,background:"#111827",border:"1px solid rgba(255,255,255,0.1)",borderRadius:10,boxShadow:"0 8px 24px rgba(0,0,0,0.5)",minWidth:260,maxWidth:360,maxHeight:320,overflowY:"auto",padding:"6px 0"},children:[jsx("div",{style:{padding:"4px 12px 8px",fontSize:11,color:"var(--color-text-muted)",borderBottom:"1px solid rgba(255,255,255,0.06)",marginBottom:4},children:n("predict.chart.selectMarkets",{count:Uo})}),e.map((d,c)=>{let m=t.includes(d.slug),u=!m&&l,f=m&&t.length===1,g=r.get(d.slug)??so,b=d.outcomes.find(S=>S.label.toLowerCase()==="yes")??d.outcomes[0],h=b?.price!=null?`${Math.round(b.price*100)}%`:null;return jsxs("button",{onClick:()=>{f||u||o(d.slug);},style:{display:"flex",alignItems:"center",gap:10,width:"100%",padding:"7px 12px",border:"none",background:m?"hsl(var(--heroui-foreground) / 0.05)":"transparent",cursor:u||f?"not-allowed":"pointer",opacity:u?.35:1,textAlign:"left",transition:"background 0.1s"},onMouseEnter:S=>{!u&&!f&&(S.currentTarget.style.background="rgba(255,255,255,0.07)");},onMouseLeave:S=>{S.currentTarget.style.background=m?"hsl(var(--heroui-foreground) / 0.05)":"transparent";},children:[jsx("span",{style:{width:16,height:16,borderRadius:4,border:m?`2px solid ${g}`:"2px solid rgba(255,255,255,0.2)",background:m?`${g}30`:"transparent",flexShrink:0,display:"flex",alignItems:"center",justifyContent:"center"},children:m&&jsx("svg",{width:"9",height:"7",viewBox:"0 0 9 7",fill:"none",children:jsx("path",{d:"M1 3.5L3.5 6L8 1",stroke:g,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),jsx("span",{style:{width:8,height:8,borderRadius:"50%",background:g,flexShrink:0}}),jsx("span",{style:{color:m?"var(--color-text-primary)":"var(--color-text-secondary)",fontSize:12,flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:lr(d)}),h&&jsx("span",{style:{color:g,fontWeight:700,fontSize:12,flexShrink:0},children:h})]},d.id??`${c}-${d.slug}`)})]})]})}function Hg({series:e,colorMap:t,displayValues:r}){return jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:"6px 24px",padding:"0 2px"},children:e.map(o=>{let n=t.get(o.marketSlug)??so,i=r.get(o.marketSlug);return jsxs("div",{style:{display:"inline-flex",alignItems:"flex-start",gap:6},children:[jsx("span",{style:{width:8,height:8,borderRadius:"50%",background:n,flexShrink:0,marginTop:3}}),jsxs("div",{style:{display:"flex",flexDirection:"column",gap:1},children:[jsx("span",{style:{color:"var(--color-text-secondary)",fontSize:12,lineHeight:"17px",whiteSpace:"nowrap"},children:o.label}),jsx("span",{style:{color:"var(--color-text-primary)",fontSize:14,fontWeight:700,lineHeight:"20px",fontVariantNumeric:"tabular-nums"},children:i!=null?Wl(i):"--"})]})]},o.marketSlug)})})}function Ug(e,t){if(e.length<=t)return e;let r=[],o=e.length/t;for(let n=0;n<t;n++){let i=Math.floor(n*o),s=Math.min(Math.floor((n+1)*o),e.length),a=e.slice(i,s),l=a[a.length-1];l&&r.push(l);}return r}function Wg(e,t=200){if(e.length===0)return [];let r=e.map(a=>({...a,data:Ug(a.data,t)})),o=new Set;r.forEach(a=>a.data.forEach(l=>o.add(l.timestamp)));let n=Array.from(o).sort((a,l)=>a-l),i=r.map(a=>{let l=new Map;return a.data.forEach(p=>l.set(p.timestamp,p.price)),{slug:a.marketSlug,map:l}}),s=new Map;return n.map(a=>{let l={timestamp:a};return i.forEach(({slug:p,map:d})=>{let c=d.get(a);if(c!==void 0)s.set(p,c),l[p]=c;else {let m=s.get(p);m!==void 0&&(l[p]=m);}}),l})}function vs(e){return jsx(hs,{children:jsx(zg,{...e})})}function zg({event:e,marketDataEnabled:t=false,isLoading:r,className:o,volume:n,fillHeight:i=false,orderbookQuotes:s}){let{t:a}=useTranslation(),l=useMemo(()=>{let C=new Set;return In(e).filter(O=>C.has(O.slug)?false:(C.add(O.slug),true))},[e]),p=useMemo(()=>[...l].sort((C,O)=>{let z=Z=>(Z.outcomes.find(me=>me.label.toLowerCase()==="yes")??Z.outcomes[0])?.price??0;return z(O)-z(C)}),[l]),[d,c]=useState(()=>p.slice(0,Uo).map(C=>C.slug));useEffect(()=>{let C=new Set(l.map(O=>O.slug));c(O=>{let z=O.filter(Z=>C.has(Z));return z.length===O.length?O:z.length>0?z:p.slice(0,Uo).map(Z=>Z.slug)});},[l,p]);let[m,u]=useState(bo),f=useMemo(()=>{let C=new Map;return d.forEach((O,z)=>{C.set(O,Hl[z%Hl.length]);}),C},[d]),g=useMemo(()=>l.filter(C=>d.includes(C.slug)),[l,d]),b=useMemo(()=>g.map(C=>C.slug).join("|"),[g]),[h,S]=useState(()=>Math.floor(Date.now()/1e3)),x=useMemo(()=>Lg(m),[m]),y=useMemo(()=>g.some(Og),[g]);useEffect(()=>{S(Math.floor(Date.now()/1e3));},[m,b]),useEffect(()=>{if(!y)return;let C=()=>{let z=Math.floor(Date.now()/1e3);S(Z=>Z===z?Z:z);},O=window.setInterval(C,x);return ()=>window.clearInterval(O)},[x,y]);let v=useMemo(()=>Tg(m,g,h),[m,g,h]),k=useMemo(()=>Rg(v),[v]),{series:P,isLoading:M}=useMarketHistory(g,m,{endTs:h}),N=`${m}:${b}`,w=useRef(new Map),R=w.current.get(N),A=M&&R!=null&&R.length>0,X=A?R:P;useEffect(()=>{!M&&P.length>0&&w.current.set(N,P);},[N,M,P]);let L=!!(r||M&&!A),G=useMemo(()=>{let C=new Map;return s&&g.forEach(O=>{let z=s.get(Ze(O.slug,"yes"))?.bestAsk;z!=null&&z>0&&Number.isFinite(z)&&C.set(O.slug,z);}),C},[s,g]),U=useMemo(()=>X.length>0&&X.some(C=>C.data.length>0)?X.map(C=>{let O=G.get(C.marketSlug);if(O==null||C.data.length===0)return C;let z=C.data[C.data.length-1];if(Math.abs(z.price-O)<1e-6)return C;let Z=Math.min(Date.now(),v[1]),me={timestamp:Z,price:O},Ne=Z-z.timestamp<5e3?[...C.data.slice(0,-1),{...z,price:O}]:[...C.data,me];return {...C,data:Ne}}):L?[]:g.flatMap(C=>{let O=C.outcomes?.find(Z=>Z.label.toLowerCase()==="yes")??C.outcomes?.[0],z=G.get(C.slug)??O?.best_ask??O?.best_bid??O?.price??(t?void 0:.5);return z===void 0?[]:[{marketSlug:C.slug,label:lr(C),data:[{timestamp:v[0],price:z},{timestamp:v[1],price:z}]}]}),[X,L,G,t,g,v]),oe=useMemo(()=>m===$.ONE_HOUR?80:m===$.SIX_HOURS?400:m===$.ONE_DAY?320:m===$.ONE_MONTH?3e3:2e3,[m]),W=useMemo(()=>Wg(U,oe),[U,oe]),te=useMemo(()=>{if(W.length===0)return [0,1];let C=1/0,O=-1/0;if(d.forEach(Z=>{W.forEach(me=>{let Ne=me[Z];Ne!=null&&(Ne<C&&(C=Ne),Ne>O&&(O=Ne));});}),!isFinite(C))return [0,1];let z=Math.max((O-C)*.15,.05);return [Math.max(0,C-z),Math.min(1,O+z)]},[W,d]),ne=useMemo(()=>{let C=new Map;return U.forEach(O=>{O.data.length>0&&C.set(O.marketSlug,O.data[O.data.length-1].price);}),C},[U]),se=useMemo(()=>{let C=new Map;return U.forEach(O=>C.set(O.marketSlug,O.label)),C},[U]),he=useMemo(()=>U.map(C=>({slug:C.marketSlug,color:f.get(C.marketSlug)??so})),[U,f]),{wrapperRef:Pe,overlayRef:pt,onMouseMove:Ve,onMouseLeave:Be}=Dg(),E=useCallback(C=>{c(O=>O.includes(C)?O.length<=1?O:O.filter(z=>z!==C):O.length>=Uo?O:[...O,C]);},[]),[st,He]=useState(null),ve=useRef(""),at=useRef(0),we=useCallback((C,O)=>{if(!O?.length)return;let z=`${C}:${O.map(me=>`${me.dataKey}:${me.value}`).join(",")}`;if(z===ve.current)return;ve.current=z;let Z=new Map;O.forEach(me=>{me.value!=null&&Z.set(me.dataKey,me.value);}),cancelAnimationFrame(at.current),at.current=requestAnimationFrame(()=>{He(Z);});},[]),Ue=useCallback(()=>{Be(),cancelAnimationFrame(at.current),ve.current="",He(null);},[Be]),qe=!L&&W.length>0;return jsxs("div",{className:o,style:{display:"flex",flexDirection:"column",gap:12,...i?{height:"100%",minHeight:0}:null},children:[jsx(Hg,{series:U,colorMap:f,displayValues:st??ne}),jsxs("div",{style:{display:"flex",flexDirection:"column",gap:0,...i?{flex:1,minHeight:0}:null},children:[jsx("div",{ref:Pe,style:{width:"100%",userSelect:"none",position:"relative",...i?{flex:1,minHeight:240}:{height:300}},onMouseMove:qe?C=>{Ve(C);}:void 0,onMouseLeave:qe?Ue:void 0,children:L?jsx("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center"},children:jsx("div",{style:{width:28,height:28,borderRadius:"50%",border:"2.5px solid #22d3ee",borderTopColor:"transparent",animation:"spin 0.7s linear infinite"}})}):W.length===0?jsx("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--color-text-muted)",fontSize:13},children:a("predict.chart.noPriceHistory")}):jsxs(Fragment,{children:[jsx("div",{ref:pt,style:{position:"absolute",inset:0,opacity:0,pointerEvents:"none",zIndex:1}}),jsx(ResponsiveContainer,{width:"100%",height:"100%",children:jsxs(LineChart,{data:W,margin:{top:8,right:16,left:0,bottom:0},onMouseLeave:Ue,children:[jsx(CartesianGrid,{horizontal:true,vertical:false,strokeDasharray:"3 3",stroke:"#374151",opacity:.5}),jsx(XAxis,{dataKey:"timestamp",type:"number",scale:"time",domain:v,ticks:k,interval:0,tickFormatter:C=>wg(C,m),axisLine:false,tickLine:false,tick:{fill:"var(--color-text-muted)",fontSize:11},minTickGap:70}),jsx(YAxis,{domain:te,tickFormatter:C=>`${Math.round(C*100)}%`,axisLine:false,tickLine:false,tick:{fill:"var(--color-text-muted)",fontSize:11},width:40,tickCount:6}),jsx(Tooltip,{content:C=>jsx(Fg,{...C,labelMap:se,allSeries:he,range:m,onPayload:we}),cursor:{stroke:"#4b5563",strokeWidth:1,strokeDasharray:"4 4"},wrapperStyle:{zIndex:2},isAnimationActive:false}),U.map(C=>{let O=f.get(C.marketSlug)??so;return jsx(Line,{type:"monotone",dataKey:C.marketSlug,stroke:O,strokeWidth:2,strokeLinejoin:"round",strokeLinecap:"round",dot:false,activeDot:{r:4.5,strokeWidth:2,stroke:"rgba(10,10,10,0.8)",fill:O},connectNulls:true,isAnimationActive:false},C.marketSlug)}),st==null&&W.length>0&&U.map(C=>{let O=W[W.length-1],z=O[C.marketSlug];if(z==null)return null;let Z=f.get(C.marketSlug)??so;return jsx(ReferenceDot,{x:O.timestamp,y:z,ifOverflow:"extendDomain",shape:me=>{let{cx:Ne,cy:lt}=me;return Ne==null||lt==null?jsx("g",{}):jsxs("g",{children:[jsxs("circle",{cx:Ne,cy:lt,r:6,fill:Z,opacity:.3,children:[jsx("animate",{attributeName:"r",values:"4;9;4",dur:"2s",repeatCount:"indefinite"}),jsx("animate",{attributeName:"opacity",values:"0.4;0.05;0.4",dur:"2s",repeatCount:"indefinite"})]}),jsx("circle",{cx:Ne,cy:lt,r:3.5,fill:Z})]})}},`pulse-${C.marketSlug}`)})]})})]})}),jsxs("div",{style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:"6px 8px",marginTop:6},children:[n!=null&&n>0&&jsx("span",{style:{color:"var(--color-text-muted)",fontSize:12},children:a("predict.chart.volume",{value:formatAmountInUsd(n)})}),jsx("div",{style:{flex:1,minWidth:0}}),jsx(Ig,{value:m,onChange:u}),p.length>1&&jsx("div",{style:{width:"100%",display:"flex",alignItems:"center"},children:jsx(Bg,{markets:p,selectedSlugs:d,colorMap:f,onToggle:E})})]})]})]})}function Dn(e){return e.outcomes[0]?.best_ask??e.outcomes[0]?.price??0}function zl(e,t){let r=e.outcomes[t==="yes"?0:1];return r?.best_ask??r?.price}function rh(e){return e===void 0?"\u2014":`${parseFloat((e*100).toFixed(2))}%`}function oh(e){if(e===void 0)return "\u2014";let t=e*100;return t<1&&t>0?"< 1":parseFloat(t.toFixed(2)).toString()}function An(e){return lr(e)}function nh(e){switch(e){case "polymarket":return "Polymarket";case "kalshi":return "Kalshi";default:return e}}function Wo(e){if(!e)return "\u2014";let t=new Date(e);if(isNaN(t.getTime()))return "\u2014";let r=t.toLocaleString("default",{month:"short"}),o=t.getDate(),n=t.getFullYear(),i=t.getHours().toString().padStart(2,"0"),s=t.getMinutes().toString().padStart(2,"0");return `${r} ${o}, ${n} ${i}:${s}`}function $l(e){let[t,r]=useState(0);if(useEffect(()=>{if(!e)return;r(Date.now());let d=setInterval(()=>r(Date.now()),1e3);return ()=>clearInterval(d)},[e]),!e||t===0)return null;let o=new Date(e).getTime();if(isNaN(o))return null;let n=o-t;if(n<=0)return null;let i=Math.floor(n/864e5),s=Math.floor(n%864e5/36e5),a=Math.floor(n%36e5/6e4),l=Math.floor(n%6e4/1e3),p=[];return i>0&&p.push(`${i}d`),p.push(`${String(s).padStart(2,"0")}h`),p.push(`${String(a).padStart(2,"0")}m`),p.push(`${String(l).padStart(2,"0")}s`),p.join(" ")}function Kl(e){if(!e)return null;let t=new Date(e);if(isNaN(t.getTime()))return null;let r=t.getHours().toString().padStart(2,"0"),o=t.getMinutes().toString().padStart(2,"0"),n=(t.getMonth()+1).toString().padStart(2,"0"),i=t.getDate().toString().padStart(2,"0"),s=t.getFullYear(),a=-t.getTimezoneOffset(),l=a>=0?"+":"-",p=String(Math.abs(Math.floor(a/60))).padStart(2,"0");return `${r}:${o} ${n}/${i}/${s} (${l}${p})`}function $o({event:e,marketDataEnabled:t=false,marketDataOrderbooks:r,onMarketDataBookSelectionChange:o,orderbookQuotes:n,onTradeAction:i}){let{t:s}=useTranslation(),{ref:a,isCollapsed:l}=useScrollCollapse(),p=Kr(e),d=useMemo(()=>{let b=[...e.markets||[]],h=b.filter(x=>x.status==="open").sort((x,y)=>Dn(y)-Dn(x)),S=b.filter(x=>x.status!=="open").sort((x,y)=>Dn(y)-Dn(x));return [...h,...S]},[e.markets]),c=e.status==="closed"||e.status==="voided",m=$l(c?void 0:e.start_at),u=$l(c?void 0:e.end_at),f=Kl(e.start_at),g=Kl(e.end_at);return jsxs("div",{className:"w-full flex flex-col gap-y-4 lg:gap-y-6",children:[jsxs("div",{ref:a,className:`sticky top-0 z-30 flex items-center backdrop-blur-md transition-all duration-300 ${l?"h-14 lg:h-16 gap-x-2 py-2 px-1 lg:px-4 -mx-1 lg:-mx-4 shadow-sm":"h-16 lg:h-20 gap-x-2 lg:gap-x-4"}`,children:[jsx(Avatar,{src:e.image_url||void 0,name:p||s("predict.event.fallbackName"),radius:"lg",classNames:{base:"bg-transparent"},className:`flex-shrink-0 transition-all duration-300 ${l?"!h-10 !w-10 lg:!h-12 lg:!w-12":"!h-16 !w-16 lg:!h-20 lg:!w-20"}`}),jsxs("div",{className:"flex flex-col gap-0.5 min-w-0 flex-1",children:[!l&&jsxs("div",{className:"flex items-center gap-1.5",children:[e.tags?.slice(0,3).map((b,h)=>jsxs(Fragment$1,{children:[h>0&&jsx("span",{className:"text-sm text-text-muted/50",children:"\xB7"}),jsx("span",{className:"text-sm text-text-muted truncate",children:b.label})]},b.slug)),jsx(lh,{source:e.source})]}),jsx("span",{className:`font-semibold truncate transition-all duration-300 ${l?"text-sm lg:text-base":"text-lg lg:text-xl"}`,children:p})]})]}),(m||u||c)&&jsx("div",{className:"flex items-center gap-x-2 text-xs lg:text-sm font-mono",children:c?g&&jsx("span",{className:"text-text-muted",children:s("predict.event.endedAt",{time:g})}):m?jsxs(Fragment,{children:[jsx("span",{className:"text-foreground",children:s("predict.event.beginsIn",{time:m})}),f&&jsxs(Fragment,{children:[jsx("span",{className:"text-text-muted/50",children:"\xB7"}),jsx("span",{className:"text-text-muted",children:f})]})]}):u?jsxs(Fragment,{children:[jsx("span",{className:"text-foreground",children:s("predict.event.endsIn",{time:u})}),g&&jsxs(Fragment,{children:[jsx("span",{className:"text-text-muted/50",children:"\xB7"}),jsx("span",{className:"text-text-muted",children:g})]})]}):null}),jsx(vs,{event:e,marketDataEnabled:t,volume:e.volume??void 0,orderbookQuotes:n}),jsx(ih,{markets:d,marketDataEnabled:t,marketDataOrderbooks:r,onMarketDataBookSelectionChange:o,orderbookQuotes:n,onTradeAction:i}),jsx(ah,{markets:d,event:e})]})}var Vl=5;function ih({markets:e,marketDataEnabled:t,marketDataOrderbooks:r,onMarketDataBookSelectionChange:o,orderbookQuotes:n,onTradeAction:i}){let{t:s}=useTranslation(),{isDesktop:a}=useScreen(),[l,p]=useState(false),[d,c]=useState(null),m=useMemo(()=>{let x=new Set;return e.filter(y=>x.has(y.slug)?false:(x.add(y.slug),true))},[e]),[u,f]=useState(null);if(m.length===0)return null;let g=m.length>Vl,b=l?m:m.slice(0,Vl),h=x=>{t&&o?.(bl(d,x.slug,u?.marketSlug===x.slug?u.outcomeKey:void 0)),c(y=>y===x.slug?null:x.slug);},S=(x,y,v,k)=>{f({marketSlug:x.slug,tradeOutcome:y,outcomeKey:k}),t&&o?.(yl(x.slug,k)),a&&c(x.slug),i?.(x,y,v);};return jsxs("div",{className:"flex flex-col",children:[jsxs("table",{className:"w-full border-collapse",children:[jsx("thead",{children:jsxs("tr",{children:[jsx("th",{}),jsx("th",{className:"py-2 text-left text-xs text-text-muted font-normal lg:text-center lg:text-sm",children:s("predict.market.table.chance")}),jsx("th",{})]})}),jsx("tbody",{children:b.map((x,y)=>{let v=d===x.slug;return jsx(sh,{market:x,activeSelection:u?.marketSlug===x.slug?u:void 0,isExpanded:v,orderbookQuotes:n,marketDataEnabled:t,marketDataOrderbooks:r,onToggleExpand:()=>h(x),onTradeAction:S,onUnselectedTradeAction:i},x.id??`${y}-${x.slug}`)})})]}),g&&jsxs("button",{type:"button",onClick:()=>p(x=>!x),className:"flex w-full items-center justify-start gap-x-2 py-2 pl-1 text-xs text-text-muted lg:pl-2 lg:text-sm cursor-pointer hover:text-foreground transition-colors",children:[jsx("span",{children:s(l?"predict.event.rules.collapse":"predict.event.moreMarketsLabel")}),jsx(ChevronDownIcon,{className:cn$1("h-4 w-4 transition-transform",l&&"rotate-180")})]})]})}function sh({market:e,activeSelection:t,isExpanded:r,orderbookQuotes:o,marketDataEnabled:n,marketDataOrderbooks:i,onToggleExpand:s,onTradeAction:a,onUnselectedTradeAction:l}){let{t:p}=useTranslation(),d=e.status==="open",c=e.volume?`${formatAmountInUsd(e.volume)} vol`:void 0,m=o?.get(Ze(e.slug,"yes"))?.bestAsk??zl(e,"yes"),u=o?.get(Ze(e.slug,"no"))?.bestAsk??zl(e,"no"),f=t?.tradeOutcome??"yes",g=t?.outcomeKey,b=kl(e.outcomes).map(S=>({...S,price:S.tradeOutcome==="yes"?m:u})),h=Sl({marketDataEnabled:n,marketSlug:e.slug,outcomeKey:g??"",books:i});return jsxs(Fragment,{children:[jsxs("tr",{className:"cursor-pointer border-b border-border text-xs hover:bg-content2 lg:text-base",onClick:s,role:"button",tabIndex:0,onKeyDown:S=>{(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),s());},children:[jsx("td",{className:"py-2 pl-1 lg:pl-2",children:jsxs("div",{className:"flex items-center gap-x-1 lg:gap-x-2",children:[e.image_url&&jsx(Avatar,{src:e.image_url,name:An(e)?.[0]||"?",radius:"lg",className:"size-5 shrink-0 lg:size-8",imgProps:{className:"object-cover"}}),jsxs("div",{className:"flex flex-col",children:[jsx("span",{className:"text-foreground truncate max-w-[200px] lg:max-w-[300px]",children:An(e)}),c&&jsx("span",{className:"text-[8px] text-text-muted lg:text-xxs",children:c})]})]})}),jsx("td",{className:"py-2 text-left text-foreground lg:text-center",children:rh(m)}),jsx("td",{className:"py-2 pr-1 lg:pr-2",children:d?jsx("div",{className:"flex items-center justify-end gap-x-2",children:b.map(({catalogOutcome:S,tradeOutcome:x,price:y})=>jsx("button",{type:"button",className:cn$1("flex min-w-16 items-center justify-center whitespace-nowrap rounded-lg p-2 lg:min-w-24 cursor-pointer hover:opacity-80 transition-all focus-visible:outline-2 focus-visible:outline-primary/40 focus-visible:outline-offset-2",x==="yes"?t?.outcomeKey===S.key?"bg-primary text-primary-foreground":"bg-primary/10 text-primary":t?.outcomeKey===S.key?"bg-secondary text-secondary-foreground":"bg-secondary/10 text-secondary"),onClick:v=>{v.stopPropagation(),a?.(e,x,"buy",S.key);},children:y!=null?p(x==="yes"?"predict.market.action.yes":"predict.market.action.no",{price:oh(y)}):x==="yes"&&n?`${p("predict.market.yes")} \u2014`:p(x==="yes"?"predict.market.yes":"predict.market.no")},S.key))}):jsx("div",{className:"flex items-center justify-end",children:jsx("span",{className:cn$1("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium",e.status==="closed"?"bg-text-muted/10 text-text-muted":e.status==="voided"?"bg-warning/10 text-warning":"bg-primary/10 text-primary"),children:e.status==="closed"?p("predict.event.status.closed"):e.status==="voided"?p("predict.event.status.voided"):p("predict.event.status.pending")})})})]}),r&&jsx("tr",{children:jsx("td",{colSpan:3,className:"pb-3",children:jsx("div",{className:"max-h-100 overflow-y-auto",children:jsx(fs,{market:e,outcome:f,onTradeAction:(S,x,y)=>{if(!g){l?.(S,x,y);return}a?.(S,x,y,g);},enabled:h.legacyEnabled,orderbook:h.orderbook})})})})]})}function ah({markets:e,event:t}){let{t:r}=useTranslation(),[o,n]=useState(false),[i,s]=useState(false),[a,l]=useState(0),p=e.filter(u=>u.rules&&u.rules.length>0||vi(u));if(p.length===0)return null;let d=p[a]??p[0],c=d.rules&&d.rules.length>0?d.rules.join(`
76
+ `,vl={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:"detailShimmer 1.8s ease-in-out infinite",borderRadius:6};function ye(e){return {...vl,animationDelay:`${e}ms`}}function ro({marketCount:e=4,showBack:t}){return jsxs(Fragment,{children:[jsx("style",{children:hl}),jsxs("div",{style:{display:"flex",flexDirection:"column",width:"100%",gap:20},children:[t&&jsx("div",{style:{height:20}}),jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[jsx("div",{style:{...vl,width:64,height:64,borderRadius:10,flexShrink:0}}),jsxs("div",{style:{flex:1,minWidth:0,display:"flex",flexDirection:"column",gap:8},children:[jsxs("div",{style:{display:"flex",alignItems:"center",gap:6},children:[jsx("div",{style:{...ye(0),height:14,width:48}}),jsx("div",{style:{...ye(30),height:14,width:40}}),jsx("div",{style:{...ye(60),height:14,width:40}})]}),jsx("div",{style:{...ye(80),height:20,width:"80%",maxWidth:384,borderRadius:4}})]})]}),jsx("div",{style:{...ye(100),height:16,width:192}}),jsxs("div",{style:{display:"flex",flexDirection:"column",gap:12},children:[jsxs("div",{style:{display:"flex",alignItems:"center",gap:16},children:[jsx("div",{style:{...ye(120),height:16,width:96}}),jsx("div",{style:{...ye(140),height:16,width:80}})]}),jsx("div",{style:{...ye(160),height:300,width:"100%",borderRadius:12}}),jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between"},children:[jsx("div",{style:{...ye(180),height:16,width:80}}),jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[jsx("div",{style:{...ye(200),height:28,width:200,borderRadius:8}}),jsx("div",{style:{...ye(220),height:28,width:112,borderRadius:8}})]})]})]}),jsxs("div",{style:{display:"flex",flexDirection:"column"},children:[jsx("div",{style:{display:"flex",alignItems:"center",justifyContent:"center",padding:"8px 0"},children:jsx("div",{style:{...ye(240),height:14,width:56}})}),Array.from({length:e}).map((r,o)=>jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"10px 0",borderBottom:"1px solid var(--color-border-subtle)"},children:[jsx("div",{style:{...ye(260+o*40),width:28,height:28,borderRadius:8,flexShrink:0}}),jsxs("div",{style:{flex:1,minWidth:0,display:"flex",flexDirection:"column",gap:4},children:[jsx("div",{style:{...ye(280+o*40),height:14,width:o%2===0?192:160}}),jsx("div",{style:{...ye(300+o*40),height:10,width:64}})]}),jsx("div",{style:{...ye(320+o*40),height:16,width:40}}),jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[jsx("div",{style:{...ye(340+o*40),height:32,width:80,borderRadius:8}}),jsx("div",{style:{...ye(360+o*40),height:32,width:80,borderRadius:8}})]})]},o))]}),jsxs("div",{style:{display:"flex",flexDirection:"column",gap:8},children:[jsx("div",{style:{...ye(400),height:16,width:64}}),jsx("div",{style:{...ye(420),height:14,width:"100%"}}),jsx("div",{style:{...ye(440),height:14,width:"80%"}}),jsx("div",{style:{...ye(460),height:14,width:"60%"}})]})]})]})}function cs(){return jsxs(Fragment,{children:[jsx("style",{children:hl}),jsxs("div",{style:{display:"flex",flexDirection:"column",gap:12,borderRadius:14,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content2) / 0.4)",padding:16},children:[jsx("div",{style:{...ye(0),height:40,width:"100%",borderRadius:8}}),jsx("div",{style:{...ye(60),height:96,width:"100%",borderRadius:8}}),jsx("div",{style:{...ye(120),height:40,width:"100%",borderRadius:8}})]})]})}function bl(e,t,r){return e===t||!r?null:{marketSlug:t,outcomeKey:r}}function yl(e,t){return {marketSlug:e,outcomeKey:t}}function kl(e){return e.slice(0,2).map((t,r)=>({catalogOutcome:t,tradeOutcome:r===0?"yes":"no"}))}function Ze(e,t){return `${e}:${t}`}function Sl({marketDataEnabled:e,marketSlug:t,outcomeKey:r,books:o}){return e?{legacyEnabled:false,orderbook:o?.get(Ze(t,r))??null}:{legacyEnabled:true,orderbook:void 0}}var wl="var(--color-bullish)",El="var(--color-bearish)";function oo(e){let t=Math.abs(e);return t>=1e9?`${parseFloat((e/1e9).toFixed(2))}B`:t>=1e6?`${parseFloat((e/1e6).toFixed(2))}M`:t>=1e3?`${parseFloat((e/1e3).toFixed(2))}K`:e.toLocaleString()}function Yf(e,t){return e<=0||t<=0?0:Math.pow(e/t,.3)}function qf(e,t){let r=new Float64Array(101),o=new Float64Array(101);for(let u of e){let f=Math.round(u.price*100);f>=0&&f<=100&&(r[f]+=u.quantity);}for(let u of t){let f=Math.round(u.price*100);f>=0&&f<=100&&(o[f]+=u.quantity);}let n=0,i=0,s=new Float64Array(101),a=new Float64Array(101);for(let u=100;u>=0;u--)n+=r[u],i+=r[u]*u/100,s[u]=n,a[u]=i;let l=0,p=0,d=new Float64Array(101),c=new Float64Array(101);for(let u=0;u<=100;u++)l+=o[u],p+=o[u]*u/100,d[u]=l,c[u]=p;let m=Math.max(s[0]??0,d[100]??0);return Array.from({length:101},(u,f)=>{let g=s[f]>0,b=d[f]>0,h=s[f]||d[f],S=r[f]>0||o[f]>0;return {priceCents:f,displayHeight:Yf(h,m),opacity:h>0?S?1:.5:0,isBid:g,isAsk:b,bidCumTotal:s[f],askCumTotal:d[f],bidCumCost:a[f],askCumCost:c[f]}})}function Qf({info:e}){let{t}=useTranslation(),r=e.isBid?wl:El,o=e.leftPct>65?void 0:`${e.leftPct}%`,n=e.leftPct>65?`${100-e.leftPct}%`:void 0;return jsxs("div",{style:{position:"absolute",top:8,left:o,right:n,zIndex:10,background:"rgba(17,24,39,0.95)",border:"1px solid rgba(255,255,255,0.08)",borderRadius:8,padding:"8px 12px",fontSize:12,color:"var(--color-text-primary)",minWidth:140,pointerEvents:"none"},children:[jsx("div",{style:{marginBottom:4,fontWeight:600},children:t("predict.orderBook.depthToPrice",{price:e.priceCents})}),jsx("div",{style:{color:r},children:t("predict.orderBook.depthContracts",{amount:oo(Math.round(e.cumTotal))})}),jsxs("div",{style:{color:r},children:["$",oo(Math.round(e.cumCost))]})]})}var Xf=memo(function({slot:t,onEnter:r,onLeave:o}){let n=useRef(null),i=t.isBid||t.isAsk,s=t.isBid?wl:t.isAsk?El:void 0;return jsx("div",{style:{position:"absolute",left:`${t.priceCents}%`,width:"1%",height:"100%",boxSizing:"border-box",borderRight:t.priceCents<100?"1px solid transparent":"none",cursor:i?"crosshair":"default"},onMouseEnter:()=>r(t,n.current),onMouseLeave:o,children:i&&jsx("div",{ref:n,style:{position:"absolute",bottom:0,left:0,width:"100%",height:`${t.displayHeight*100}%`,backgroundColor:s,opacity:t.opacity}})})}),Jf=[0,10,20,30,40,50,60,70,80,90,100];function Zf(){return jsx("div",{className:"relative flex h-6 items-center border-b border-t border-border px-1",style:{background:"rgba(0,0,0,0.15)"},children:Jf.map(e=>jsx("span",{className:"absolute text-text-muted font-normal",style:{fontSize:10,left:`${e}%`,transform:e===0?"translateX(0px)":e===100?"translateX(-100%)":"translateX(-50%)"},children:e},e))})}function us({bids:e,asks:t}){let{t:r}=useTranslation(),o=useMemo(()=>qf(e,t),[e,t]),n=useMemo(()=>{let c=e.length>0?Math.max(...e.map(u=>u.price)):0,m=t.length>0?Math.min(...t.map(u=>u.price)):1;return Math.round((c+m)/2*100)},[e,t]),i=useMemo(()=>o.some(c=>c.isBid||c.isAsk),[o]),[s,a]=useState(null),l=useRef(null),p=useCallback((c,m)=>{l.current&&(l.current.style.filter=""),m?(m.style.filter="brightness(1.5)",l.current=m):l.current=null,c.isBid||c.isAsk?a({priceCents:c.priceCents,isBid:c.isBid,cumTotal:c.isBid?c.bidCumTotal:c.askCumTotal,cumCost:c.isBid?c.bidCumCost:c.askCumCost,leftPct:c.priceCents}):a(null);},[]),d=useCallback(()=>{l.current&&(l.current.style.filter="",l.current=null),a(null);},[]);return i?jsxs("div",{style:{display:"flex",flexDirection:"column",width:"100%",height:"100%",userSelect:"none",overflow:"hidden"},children:[jsxs("div",{style:{flex:1,position:"relative",width:"100%",overflow:"hidden"},children:[n>0&&jsx("div",{style:{position:"absolute",left:`${n}%`,top:0,bottom:0,width:1,backgroundImage:"repeating-linear-gradient(to bottom, #6b7280 0, #6b7280 4px, transparent 4px, transparent 8px)",zIndex:1,pointerEvents:"none"}}),s&&jsx(Qf,{info:s}),o.map(c=>jsx(Xf,{slot:c,onEnter:p,onLeave:d},c.priceCents))]}),jsx(Zf,{})]}):jsx("div",{style:{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--color-text-muted)",fontSize:13},children:r("predict.orderBook.noData")})}function _l(e){let t=e*100,r=Math.round(t*10)/10;return Number.isInteger(r)?`${r}\xA2`:`${r.toFixed(1)}\xA2`}function Tl(){let{t:e}=useTranslation();return jsx("div",{className:"absolute inset-0 flex items-center justify-center text-text-muted text-xs",children:jsx("span",{children:e("predict.orderBook.loading")})})}function fs({market:e,outcome:t="yes",initialViewMode:r="depth",className:o,oddsFormatter:n,enabled:i=true,orderbook:s}){let{t:a}=useTranslation(),[l,p]=useState(r),d=n??_l,c=e.source,{data:m,isLoading:u,isFetching:f,refetch:g}=useRealtimeOrderbook({slug:e.slug,source:c,outcome:t},{enabled:i}),b=s!==void 0,h=b?s:m,S=!b&&u,x=!b&&f,y=useMemo(()=>(h?.bids??[]).map(N=>({price:N.price,quantity:N.size})),[h?.bids]),v=useMemo(()=>(h?.asks??[]).map(N=>({price:N.price,quantity:N.size})),[h?.asks]),k=useMemo(()=>y.length>0?Math.max(...y.map(N=>N.price)):null,[y]),P=useMemo(()=>v.length>0?Math.min(...v.map(N=>N.price)):null,[v]),M=useMemo(()=>{if(k==null||P==null)return null;let N=(P-k)*100;return Math.round(N*10)/10},[k,P]);return jsxs("div",{className:cn$1("flex flex-col",o??"h-[262px]"),children:[jsxs("div",{className:"flex h-9 items-center border-b border-border px-1 text-xs",children:[jsx("span",{className:"flex-1 text-left text-text-muted",children:M!=null?`${a("predict.orderBook.spread")}: ${Number.isInteger(M)?`${M}\xA2`:`${M.toFixed(1)}\xA2`}`:null}),jsxs("span",{className:"flex flex-1 items-center justify-center gap-x-1 whitespace-nowrap",children:[k!=null&&jsxs("span",{style:{color:"var(--color-bullish)"},children:[a("predict.trade.bestBid"),": ",d(k)]}),k!=null&&P!=null&&jsx("span",{className:"text-text-muted",children:"|"}),P!=null&&jsxs("span",{style:{color:"var(--color-bearish)"},children:[a("predict.trade.bestAsk"),": ",d(P)]})]}),jsxs("div",{className:"flex flex-1 items-center justify-end gap-x-2",children:[jsx("button",{type:"button",title:a(l==="depth"?"predict.orderBook.tableView":"predict.orderBook.depthView"),onClick:()=>p(N=>N==="depth"?"table":"depth"),className:"flex items-center text-text-muted transition-colors cursor-pointer hover:text-foreground",children:l==="depth"?jsx(OrderbookTableIcon,{className:"h-4 w-4"}):jsx(OrderbookDepthIcon,{className:"h-4 w-4"})}),jsx("button",{type:"button",title:a("predict.orderBook.refresh"),onClick:()=>{b||g();},disabled:b||x,className:cn$1("flex items-center text-text-muted transition-colors cursor-pointer hover:text-foreground disabled:cursor-default disabled:opacity-50",x&&"animate-spin"),children:jsx(RefreshIcon,{className:"h-4 w-4"})})]})]}),jsxs("div",{className:"relative flex-1 min-h-0 overflow-hidden",children:[l==="depth"&&jsx(Fragment,{children:S?jsx(Tl,{}):jsx(us,{bids:y,asks:v})}),l==="table"&&jsx(Fragment,{children:S?jsx(Tl,{}):jsx(ig,{bids:y,asks:v,bestBid:k??void 0,bestAsk:P??void 0,spread:M??void 0,oddsFormatter:n})})]})]})}var ps=4,ng=8;function ig({bids:e,asks:t,spread:r,oddsFormatter:o}){let{t:n}=useTranslation(),[i,s]=useState(false),a=i?ng:ps,l=t.length>ps||e.length>ps,p=useMemo(()=>[...t].sort((u,f)=>u.price-f.price).slice(0,a).reverse(),[t,a]),d=useMemo(()=>[...e].sort((u,f)=>f.price-u.price).slice(0,a),[e,a]),c=useMemo(()=>{let u=[...p,...d].map(f=>f.quantity);return Math.max(...u,1)},[p,d]);return p.length===0&&d.length===0?jsx("div",{className:"flex items-center justify-center h-full text-xs text-text-muted",children:n("predict.orderBook.empty")}):jsxs("div",{className:"flex flex-col h-full overflow-y-auto text-xs font-mono select-none",children:[p.map(u=>jsx(Rl,{price:u.price,quantity:u.quantity,side:"ask",maxQty:c,oddsFormatter:o},`ask-${u.price}`)),jsxs("div",{className:"relative flex items-center justify-center gap-x-2 py-1 border-y border-border text-text-muted text-[10px]",children:[r!=null&&jsxs("span",{children:[n("predict.orderBook.spread"),":"," ",Number.isInteger(r)?`${r}\xA2`:`${r.toFixed(1)}\xA2`]}),l&&jsx("button",{type:"button",onClick:()=>s(u=>!u),className:"absolute right-2 text-[10px] text-text-muted transition-colors cursor-pointer hover:text-foreground",children:n(i?"predict.orderBook.collapse":"predict.orderBook.expand")})]}),d.map(u=>jsx(Rl,{price:u.price,quantity:u.quantity,side:"bid",maxQty:c,oddsFormatter:o},`bid-${u.price}`)),jsxs("div",{className:"grid grid-cols-3 px-2 pt-2 pb-0.5 text-[10px] text-text-muted border-t border-border",children:[jsx("span",{children:n("predict.orderBook.price")}),jsx("span",{className:"text-center",children:n("predict.orderBook.contracts")}),jsx("span",{className:"text-right",children:n("predict.orderBook.total")})]})]})}function Rl({price:e,quantity:t,side:r,maxQty:o,oddsFormatter:n}){let i=r==="ask",s=Math.min(t/o*100,100),a=i?"bg-negative/10":"bg-positive/10",l=i?"text-negative":"text-positive",p=oo(Math.round(t)),d=Math.round(t*e),c=`$${oo(d)}`;return jsxs("div",{className:"relative grid grid-cols-3 px-2 py-1 hover:bg-content2 transition-colors cursor-default",children:[jsx("div",{className:`absolute inset-y-0 left-0 ${a} transition-[width] duration-200`,style:{width:`${s}%`}}),jsx("span",{className:`relative z-10 ${l}`,children:n?n(e):_l(e)}),jsx("span",{className:"relative z-10 text-foreground text-center",children:p}),jsx("span",{className:"relative z-10 text-foreground text-right",children:c})]})}var Ln=new Map,gs=new Set,Dl=0;function Al(){Dl+=1,gs.forEach(e=>e());}function dg(e){return gs.add(e),()=>gs.delete(e)}function Il(){return Dl}function ug(e,t){return e?.bestAsk===t.bestAsk&&e?.bestBid===t.bestBid}function On(e){return e!=null&&e>0&&Number.isFinite(e)?e:void 0}function pg(e,t,r){if(!e||!t)return;let o={bestAsk:On(r.bestAsk),bestBid:On(r.bestBid)};if(o.bestAsk===void 0&&o.bestBid===void 0){_n(e,t);return}let n=Ze(e,t);ug(Ln.get(n),o)||(Ln.set(n,o),Al());}function Fl(e,t,r){!e||!t||!r||pg(e,t,{bestAsk:On(pickBestAsk(r,t)),bestBid:On(pickBestBid(r,t))});}function _n(e,t){if(!e||!t)return;let r=Ze(e,t);Ln.delete(r)&&Al();}function Bl(e){let t=useSyncExternalStore(dg,Il,Il);return useMemo(()=>{let r=new Map;for(let o of e){let n=Ze(o.slug,o.outcome),i=Ln.get(n);i!==void 0&&r.set(n,i);}return r},[e,t])}function In(e){return e.status==="closed"||e.status==="voided"?e.markets??[]:(e.markets??[]).filter(t=>t.status==="open")}var so=themeSemanticColors.text.muted,hs=class extends Component{state={error:null};static getDerivedStateFromError(t){return {error:t}}componentDidCatch(t,r){}render(){return this.state.error?jsxs("div",{style:{height:this.props.fallbackHeight??320,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:8,color:"var(--color-text-muted)",fontSize:13},children:[jsx(Translation,{children:t=>jsx("span",{children:t("predict.chart.unavailable")})}),jsx("span",{style:{fontSize:11,opacity:.7},children:this.state.error.message})]}):this.props.children}},Wo=4,Hl=["#22d3ee","#a3e635","#f97316","#f472b6","#a78bfa"];function wg(e,t){let r=new Date(e);return t===$.ONE_HOUR||t===$.SIX_HOURS||t===$.ONE_DAY?r.toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",hour12:false}):t===$.ALL?r.toLocaleDateString("en-US",{month:"numeric",day:"numeric"}):r.toLocaleDateString("en-US",{month:"short",day:"numeric"})}function Eg(e,t){let r=new Date(e);return t===$.ONE_HOUR||t===$.SIX_HOURS||t===$.ONE_DAY?r.toLocaleTimeString("en-US",{month:t===$.ONE_DAY?"short":void 0,day:t===$.ONE_DAY?"numeric":void 0,hour:"2-digit",minute:"2-digit",hour12:false}):t===$.ONE_MONTH||t===$.ALL?r.toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit",hour12:false}):r.toLocaleDateString("en-US",{month:"short",day:"numeric"})}function Wl(e){return `${(e*100).toFixed(2)}%`}function Cg(e){if(!e)return;let t=Date.parse(e);return Number.isFinite(t)?t:void 0}function Tg(e,t,r){let o=r*1e3,n=t.map(a=>Cg(a.created_at)).filter(a=>a!=null),i=n.length>0?Math.min(...n):void 0,s=xi[e];if(s!=null){let a=o-s*1e3;return [i!=null?Math.max(i,a):a,o]}return [i??o-7*864e5,o]}function Rg([e,t]){if(!Number.isFinite(e)||!Number.isFinite(t)||t<=e)return [];let r=5,o=(t-e)/(r-1);return Array.from({length:r},(n,i)=>Math.round(e+o*i))}function Lg(e){switch(e){case $.ONE_HOUR:case $.SIX_HOURS:return 3e4;case $.ONE_DAY:return 6e4;case $.ONE_MONTH:case $.ALL:return 5*6e4;default:return 6e4}}function Og(e){return e.status==="open"||e.status==="pending"}var _g=[{range:$.ONE_HOUR,label:"1h"},{range:$.SIX_HOURS,label:"6h"},{range:$.ONE_DAY,label:"1D"},{range:$.ONE_MONTH,label:"1M"},{range:$.ALL,label:"ALL"}];function Ig({value:e,onChange:t}){return jsx("div",{style:{display:"flex",alignItems:"center",gap:2},children:_g.map(({range:r,label:o})=>{let n=r===e;return jsx("button",{onClick:()=>t(r),style:{padding:"2px 8px",border:"none",background:"transparent",color:n?"var(--color-text-primary)":"var(--color-text-muted)",fontWeight:n?700:400,fontSize:12,cursor:"pointer",borderRadius:4,letterSpacing:"0.02em",transition:"color 0.15s",userSelect:"none"},children:o},r)})})}function Dg(){let e=useRef(null),t=useRef(null),r=useCallback(n=>{let i=e.current,s=t.current;if(!i||!s)return;let a=i.getBoundingClientRect(),l=(n.clientX-a.left)/a.width*100;s.style.background=`linear-gradient(to right, transparent ${l}%, rgba(0,0,0,0.55) ${l}%)`,s.style.opacity="1";},[]),o=useCallback(()=>{t.current&&(t.current.style.opacity="0");},[]);return {wrapperRef:e,overlayRef:t,onMouseMove:r,onMouseLeave:o}}function Ag({active:e,payload:t,label:r,labelMap:o,allSeries:n,range:i}){if(!e||!n?.length)return null;let s=new Map;t?.forEach(l=>s.set(l.dataKey,l));let a=n.map(l=>s.get(l.slug)??{dataKey:l.slug,value:void 0,stroke:l.color,color:l.color});return jsxs("div",{style:{background:"rgba(10,10,10,0.92)",border:"1px solid rgba(255,255,255,0.1)",borderRadius:8,padding:"8px 12px",minWidth:180,backdropFilter:"blur(8px)",fontSize:12},children:[jsx("div",{style:{color:"var(--color-text-secondary)",marginBottom:6,fontWeight:500},children:typeof r=="number"?Eg(r,i):r}),a.map(l=>jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:3},children:[jsx("span",{style:{display:"inline-block",width:3,height:14,borderRadius:2,background:l.stroke??l.color,flexShrink:0}}),jsx("span",{style:{color:"var(--color-text-secondary)",flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",maxWidth:120},children:o.get(l.dataKey)??l.dataKey}),jsx("span",{style:{color:"var(--color-text-primary)",fontWeight:700,fontVariantNumeric:"tabular-nums"},children:l.value!=null?Wl(l.value):"--"})]},l.dataKey))]})}function Fg({onPayload:e,...t}){let{active:r,label:o,payload:n}=t;return useEffect(()=>{r&&e(o,n);},[r,o,e,n]),jsx(Ag,{...t})}function Bg({markets:e,selectedSlugs:t,colorMap:r,onToggle:o}){let{t:n}=useTranslation(),[i,s]=useState(false),a=useRef(null);useEffect(()=>{if(!i)return;function d(c){a.current&&!a.current.contains(c.target)&&s(false);}return document.addEventListener("mousedown",d),()=>document.removeEventListener("mousedown",d)},[i]);let l=t.length>=Wo,p=jsxs("div",{style:{display:"flex",alignItems:"center",gap:6,flex:1,minWidth:0},children:[jsx("div",{style:{display:"flex",gap:3,flexShrink:0},children:t.map(d=>jsx("span",{style:{width:8,height:8,borderRadius:"50%",background:r.get(d)??so,display:"inline-block"}},d))}),jsx("span",{style:{color:"#e5e7eb",fontSize:12,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:t.length===1?(()=>{let d=e.find(c=>c.slug===t[0]);return d?lr(d):n("predict.chart.singleMarket")})():n("predict.chart.marketCount",{selected:t.length,total:e.length})})]});return jsxs("div",{ref:a,style:{position:"relative",display:"inline-block",width:200},children:[jsxs("button",{onClick:()=>s(d=>!d),style:{display:"inline-flex",alignItems:"center",gap:6,padding:"5px 10px",borderRadius:8,border:"1px solid rgba(255,255,255,0.12)",background:"hsl(var(--heroui-foreground) / 0.05)",cursor:"pointer",width:"100%",userSelect:"none"},children:[p,jsx("svg",{width:"12",height:"12",viewBox:"0 0 12 12",fill:"none",style:{flexShrink:0,transform:i?"rotate(180deg)":"rotate(0deg)",transition:"transform 0.15s",color:"var(--color-text-muted)"},children:jsx("path",{d:"M2 4l4 4 4-4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})]}),i&&jsxs("div",{style:{position:"absolute",top:"calc(100% + 4px)",left:0,zIndex:50,background:"#111827",border:"1px solid rgba(255,255,255,0.1)",borderRadius:10,boxShadow:"0 8px 24px rgba(0,0,0,0.5)",minWidth:260,maxWidth:360,maxHeight:320,overflowY:"auto",padding:"6px 0"},children:[jsx("div",{style:{padding:"4px 12px 8px",fontSize:11,color:"var(--color-text-muted)",borderBottom:"1px solid rgba(255,255,255,0.06)",marginBottom:4},children:n("predict.chart.selectMarkets",{count:Wo})}),e.map((d,c)=>{let m=t.includes(d.slug),u=!m&&l,f=m&&t.length===1,g=r.get(d.slug)??so,b=d.outcomes.find(S=>S.label.toLowerCase()==="yes")??d.outcomes[0],h=b?.price!=null?`${Math.round(b.price*100)}%`:null;return jsxs("button",{onClick:()=>{f||u||o(d.slug);},style:{display:"flex",alignItems:"center",gap:10,width:"100%",padding:"7px 12px",border:"none",background:m?"hsl(var(--heroui-foreground) / 0.05)":"transparent",cursor:u||f?"not-allowed":"pointer",opacity:u?.35:1,textAlign:"left",transition:"background 0.1s"},onMouseEnter:S=>{!u&&!f&&(S.currentTarget.style.background="rgba(255,255,255,0.07)");},onMouseLeave:S=>{S.currentTarget.style.background=m?"hsl(var(--heroui-foreground) / 0.05)":"transparent";},children:[jsx("span",{style:{width:16,height:16,borderRadius:4,border:m?`2px solid ${g}`:"2px solid rgba(255,255,255,0.2)",background:m?`${g}30`:"transparent",flexShrink:0,display:"flex",alignItems:"center",justifyContent:"center"},children:m&&jsx("svg",{width:"9",height:"7",viewBox:"0 0 9 7",fill:"none",children:jsx("path",{d:"M1 3.5L3.5 6L8 1",stroke:g,strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})})}),jsx("span",{style:{width:8,height:8,borderRadius:"50%",background:g,flexShrink:0}}),jsx("span",{style:{color:m?"var(--color-text-primary)":"var(--color-text-secondary)",fontSize:12,flex:1,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:lr(d)}),h&&jsx("span",{style:{color:g,fontWeight:700,fontSize:12,flexShrink:0},children:h})]},d.id??`${c}-${d.slug}`)})]})]})}function Hg({series:e,colorMap:t,displayValues:r}){return jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:"6px 24px",padding:"0 2px"},children:e.map(o=>{let n=t.get(o.marketSlug)??so,i=r.get(o.marketSlug);return jsxs("div",{style:{display:"inline-flex",alignItems:"flex-start",gap:6},children:[jsx("span",{style:{width:8,height:8,borderRadius:"50%",background:n,flexShrink:0,marginTop:3}}),jsxs("div",{style:{display:"flex",flexDirection:"column",gap:1},children:[jsx("span",{style:{color:"var(--color-text-secondary)",fontSize:12,lineHeight:"17px",whiteSpace:"nowrap"},children:o.label}),jsx("span",{style:{color:"var(--color-text-primary)",fontSize:14,fontWeight:700,lineHeight:"20px",fontVariantNumeric:"tabular-nums"},children:i!=null?Wl(i):"--"})]})]},o.marketSlug)})})}function Ug(e,t){if(e.length<=t)return e;let r=[],o=e.length/t;for(let n=0;n<t;n++){let i=Math.floor(n*o),s=Math.min(Math.floor((n+1)*o),e.length),a=e.slice(i,s),l=a[a.length-1];l&&r.push(l);}return r}function Wg(e,t=200){if(e.length===0)return [];let r=e.map(a=>({...a,data:Ug(a.data,t)})),o=new Set;r.forEach(a=>a.data.forEach(l=>o.add(l.timestamp)));let n=Array.from(o).sort((a,l)=>a-l),i=r.map(a=>{let l=new Map;return a.data.forEach(p=>l.set(p.timestamp,p.price)),{slug:a.marketSlug,map:l}}),s=new Map;return n.map(a=>{let l={timestamp:a};return i.forEach(({slug:p,map:d})=>{let c=d.get(a);if(c!==void 0)s.set(p,c),l[p]=c;else {let m=s.get(p);m!==void 0&&(l[p]=m);}}),l})}function vs(e){return jsx(hs,{children:jsx(zg,{...e})})}function zg({event:e,marketDataEnabled:t=false,isLoading:r,className:o,volume:n,fillHeight:i=false,orderbookQuotes:s}){let{t:a}=useTranslation(),l=useMemo(()=>{let C=new Set;return In(e).filter(O=>C.has(O.slug)?false:(C.add(O.slug),true))},[e]),p=useMemo(()=>[...l].sort((C,O)=>{let z=Z=>(Z.outcomes.find(me=>me.label.toLowerCase()==="yes")??Z.outcomes[0])?.price??0;return z(O)-z(C)}),[l]),[d,c]=useState(()=>p.slice(0,Wo).map(C=>C.slug));useEffect(()=>{let C=new Set(l.map(O=>O.slug));c(O=>{let z=O.filter(Z=>C.has(Z));return z.length===O.length?O:z.length>0?z:p.slice(0,Wo).map(Z=>Z.slug)});},[l,p]);let[m,u]=useState(yo),f=useMemo(()=>{let C=new Map;return d.forEach((O,z)=>{C.set(O,Hl[z%Hl.length]);}),C},[d]),g=useMemo(()=>l.filter(C=>d.includes(C.slug)),[l,d]),b=useMemo(()=>g.map(C=>C.slug).join("|"),[g]),[h,S]=useState(()=>Math.floor(Date.now()/1e3)),x=useMemo(()=>Lg(m),[m]),y=useMemo(()=>g.some(Og),[g]);useEffect(()=>{S(Math.floor(Date.now()/1e3));},[m,b]),useEffect(()=>{if(!y)return;let C=()=>{let z=Math.floor(Date.now()/1e3);S(Z=>Z===z?Z:z);},O=window.setInterval(C,x);return ()=>window.clearInterval(O)},[x,y]);let v=useMemo(()=>Tg(m,g,h),[m,g,h]),k=useMemo(()=>Rg(v),[v]),{series:P,isLoading:M}=useMarketHistory(g,m,{endTs:h}),N=`${m}:${b}`,w=useRef(new Map),R=w.current.get(N),A=M&&R!=null&&R.length>0,X=A?R:P;useEffect(()=>{!M&&P.length>0&&w.current.set(N,P);},[N,M,P]);let L=!!(r||M&&!A),G=useMemo(()=>{let C=new Map;return s&&g.forEach(O=>{let z=s.get(Ze(O.slug,"yes"))?.bestAsk;z!=null&&z>0&&Number.isFinite(z)&&C.set(O.slug,z);}),C},[s,g]),U=useMemo(()=>X.length>0&&X.some(C=>C.data.length>0)?X.map(C=>{let O=G.get(C.marketSlug);if(O==null||C.data.length===0)return C;let z=C.data[C.data.length-1];if(Math.abs(z.price-O)<1e-6)return C;let Z=Math.min(Date.now(),v[1]),me={timestamp:Z,price:O},Ne=Z-z.timestamp<5e3?[...C.data.slice(0,-1),{...z,price:O}]:[...C.data,me];return {...C,data:Ne}}):L?[]:g.flatMap(C=>{let O=C.outcomes?.find(Z=>Z.label.toLowerCase()==="yes")??C.outcomes?.[0],z=G.get(C.slug)??O?.best_ask??O?.best_bid??O?.price??(t?void 0:.5);return z===void 0?[]:[{marketSlug:C.slug,label:lr(C),data:[{timestamp:v[0],price:z},{timestamp:v[1],price:z}]}]}),[X,L,G,t,g,v]),oe=useMemo(()=>m===$.ONE_HOUR?80:m===$.SIX_HOURS?400:m===$.ONE_DAY?320:m===$.ONE_MONTH?3e3:2e3,[m]),W=useMemo(()=>Wg(U,oe),[U,oe]),te=useMemo(()=>{if(W.length===0)return [0,1];let C=1/0,O=-1/0;if(d.forEach(Z=>{W.forEach(me=>{let Ne=me[Z];Ne!=null&&(Ne<C&&(C=Ne),Ne>O&&(O=Ne));});}),!isFinite(C))return [0,1];let z=Math.max((O-C)*.15,.05);return [Math.max(0,C-z),Math.min(1,O+z)]},[W,d]),ne=useMemo(()=>{let C=new Map;return U.forEach(O=>{O.data.length>0&&C.set(O.marketSlug,O.data[O.data.length-1].price);}),C},[U]),se=useMemo(()=>{let C=new Map;return U.forEach(O=>C.set(O.marketSlug,O.label)),C},[U]),he=useMemo(()=>U.map(C=>({slug:C.marketSlug,color:f.get(C.marketSlug)??so})),[U,f]),{wrapperRef:Pe,overlayRef:pt,onMouseMove:Ve,onMouseLeave:Be}=Dg(),E=useCallback(C=>{c(O=>O.includes(C)?O.length<=1?O:O.filter(z=>z!==C):O.length>=Wo?O:[...O,C]);},[]),[st,He]=useState(null),ve=useRef(""),at=useRef(0),we=useCallback((C,O)=>{if(!O?.length)return;let z=`${C}:${O.map(me=>`${me.dataKey}:${me.value}`).join(",")}`;if(z===ve.current)return;ve.current=z;let Z=new Map;O.forEach(me=>{me.value!=null&&Z.set(me.dataKey,me.value);}),cancelAnimationFrame(at.current),at.current=requestAnimationFrame(()=>{He(Z);});},[]),Ue=useCallback(()=>{Be(),cancelAnimationFrame(at.current),ve.current="",He(null);},[Be]),qe=!L&&W.length>0;return jsxs("div",{className:o,style:{display:"flex",flexDirection:"column",gap:12,...i?{height:"100%",minHeight:0}:null},children:[jsx(Hg,{series:U,colorMap:f,displayValues:st??ne}),jsxs("div",{style:{display:"flex",flexDirection:"column",gap:0,...i?{flex:1,minHeight:0}:null},children:[jsx("div",{ref:Pe,style:{width:"100%",userSelect:"none",position:"relative",...i?{flex:1,minHeight:240}:{height:300}},onMouseMove:qe?C=>{Ve(C);}:void 0,onMouseLeave:qe?Ue:void 0,children:L?jsx("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center"},children:jsx("div",{style:{width:28,height:28,borderRadius:"50%",border:"2.5px solid #22d3ee",borderTopColor:"transparent",animation:"spin 0.7s linear infinite"}})}):W.length===0?jsx("div",{style:{height:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"var(--color-text-muted)",fontSize:13},children:a("predict.chart.noPriceHistory")}):jsxs(Fragment,{children:[jsx("div",{ref:pt,style:{position:"absolute",inset:0,opacity:0,pointerEvents:"none",zIndex:1}}),jsx(ResponsiveContainer,{width:"100%",height:"100%",children:jsxs(LineChart,{data:W,margin:{top:8,right:16,left:0,bottom:0},onMouseLeave:Ue,children:[jsx(CartesianGrid,{horizontal:true,vertical:false,strokeDasharray:"3 3",stroke:"#374151",opacity:.5}),jsx(XAxis,{dataKey:"timestamp",type:"number",scale:"time",domain:v,ticks:k,interval:0,tickFormatter:C=>wg(C,m),axisLine:false,tickLine:false,tick:{fill:"var(--color-text-muted)",fontSize:11},minTickGap:70}),jsx(YAxis,{domain:te,tickFormatter:C=>`${Math.round(C*100)}%`,axisLine:false,tickLine:false,tick:{fill:"var(--color-text-muted)",fontSize:11},width:40,tickCount:6}),jsx(Tooltip,{content:C=>jsx(Fg,{...C,labelMap:se,allSeries:he,range:m,onPayload:we}),cursor:{stroke:"#4b5563",strokeWidth:1,strokeDasharray:"4 4"},wrapperStyle:{zIndex:2},isAnimationActive:false}),U.map(C=>{let O=f.get(C.marketSlug)??so;return jsx(Line,{type:"monotone",dataKey:C.marketSlug,stroke:O,strokeWidth:2,strokeLinejoin:"round",strokeLinecap:"round",dot:false,activeDot:{r:4.5,strokeWidth:2,stroke:"rgba(10,10,10,0.8)",fill:O},connectNulls:true,isAnimationActive:false},C.marketSlug)}),st==null&&W.length>0&&U.map(C=>{let O=W[W.length-1],z=O[C.marketSlug];if(z==null)return null;let Z=f.get(C.marketSlug)??so;return jsx(ReferenceDot,{x:O.timestamp,y:z,ifOverflow:"extendDomain",shape:me=>{let{cx:Ne,cy:lt}=me;return Ne==null||lt==null?jsx("g",{}):jsxs("g",{children:[jsxs("circle",{cx:Ne,cy:lt,r:6,fill:Z,opacity:.3,children:[jsx("animate",{attributeName:"r",values:"4;9;4",dur:"2s",repeatCount:"indefinite"}),jsx("animate",{attributeName:"opacity",values:"0.4;0.05;0.4",dur:"2s",repeatCount:"indefinite"})]}),jsx("circle",{cx:Ne,cy:lt,r:3.5,fill:Z})]})}},`pulse-${C.marketSlug}`)})]})})]})}),jsxs("div",{style:{display:"flex",flexWrap:"wrap",alignItems:"center",gap:"6px 8px",marginTop:6},children:[n!=null&&n>0&&jsx("span",{style:{color:"var(--color-text-muted)",fontSize:12},children:a("predict.chart.volume",{value:formatAmountInUsd(n)})}),jsx("div",{style:{flex:1,minWidth:0}}),jsx(Ig,{value:m,onChange:u}),p.length>1&&jsx("div",{style:{width:"100%",display:"flex",alignItems:"center"},children:jsx(Bg,{markets:p,selectedSlugs:d,colorMap:f,onToggle:E})})]})]})]})}function Dn(e){return e.outcomes[0]?.best_ask??e.outcomes[0]?.price??0}function zl(e,t){let r=e.outcomes[t==="yes"?0:1];return r?.best_ask??r?.price}function rh(e){return e===void 0?"\u2014":`${parseFloat((e*100).toFixed(2))}%`}function oh(e){if(e===void 0)return "\u2014";let t=e*100;return t<1&&t>0?"< 1":parseFloat(t.toFixed(2)).toString()}function An(e){return lr(e)}function nh(e){switch(e){case "polymarket":return "Polymarket";case "kalshi":return "Kalshi";default:return e}}function zo(e){if(!e)return "\u2014";let t=new Date(e);if(isNaN(t.getTime()))return "\u2014";let r=t.toLocaleString("default",{month:"short"}),o=t.getDate(),n=t.getFullYear(),i=t.getHours().toString().padStart(2,"0"),s=t.getMinutes().toString().padStart(2,"0");return `${r} ${o}, ${n} ${i}:${s}`}function $l(e){let[t,r]=useState(0);if(useEffect(()=>{if(!e)return;r(Date.now());let d=setInterval(()=>r(Date.now()),1e3);return ()=>clearInterval(d)},[e]),!e||t===0)return null;let o=new Date(e).getTime();if(isNaN(o))return null;let n=o-t;if(n<=0)return null;let i=Math.floor(n/864e5),s=Math.floor(n%864e5/36e5),a=Math.floor(n%36e5/6e4),l=Math.floor(n%6e4/1e3),p=[];return i>0&&p.push(`${i}d`),p.push(`${String(s).padStart(2,"0")}h`),p.push(`${String(a).padStart(2,"0")}m`),p.push(`${String(l).padStart(2,"0")}s`),p.join(" ")}function Kl(e){if(!e)return null;let t=new Date(e);if(isNaN(t.getTime()))return null;let r=t.getHours().toString().padStart(2,"0"),o=t.getMinutes().toString().padStart(2,"0"),n=(t.getMonth()+1).toString().padStart(2,"0"),i=t.getDate().toString().padStart(2,"0"),s=t.getFullYear(),a=-t.getTimezoneOffset(),l=a>=0?"+":"-",p=String(Math.abs(Math.floor(a/60))).padStart(2,"0");return `${r}:${o} ${n}/${i}/${s} (${l}${p})`}function Ko({event:e,marketDataEnabled:t=false,marketDataOrderbooks:r,onMarketDataBookSelectionChange:o,orderbookQuotes:n,onTradeAction:i}){let{t:s}=useTranslation(),{ref:a,isCollapsed:l}=useScrollCollapse(),p=Kr(e),d=useMemo(()=>{let b=[...e.markets||[]],h=b.filter(x=>x.status==="open").sort((x,y)=>Dn(y)-Dn(x)),S=b.filter(x=>x.status!=="open").sort((x,y)=>Dn(y)-Dn(x));return [...h,...S]},[e.markets]),c=e.status==="closed"||e.status==="voided",m=$l(c?void 0:e.start_at),u=$l(c?void 0:e.end_at),f=Kl(e.start_at),g=Kl(e.end_at);return jsxs("div",{className:"w-full flex flex-col gap-y-4 lg:gap-y-6",children:[jsxs("div",{ref:a,className:`sticky top-0 z-30 flex items-center backdrop-blur-md transition-all duration-300 ${l?"h-14 lg:h-16 gap-x-2 py-2 px-1 lg:px-4 -mx-1 lg:-mx-4 shadow-sm":"h-16 lg:h-20 gap-x-2 lg:gap-x-4"}`,children:[jsx(Avatar,{src:e.image_url||void 0,name:p||s("predict.event.fallbackName"),radius:"lg",classNames:{base:"bg-transparent"},className:`flex-shrink-0 transition-all duration-300 ${l?"!h-10 !w-10 lg:!h-12 lg:!w-12":"!h-16 !w-16 lg:!h-20 lg:!w-20"}`}),jsxs("div",{className:"flex flex-col gap-0.5 min-w-0 flex-1",children:[!l&&jsxs("div",{className:"flex items-center gap-1.5",children:[e.tags?.slice(0,3).map((b,h)=>jsxs(Fragment$1,{children:[h>0&&jsx("span",{className:"text-sm text-text-muted/50",children:"\xB7"}),jsx("span",{className:"text-sm text-text-muted truncate",children:b.label})]},b.slug)),jsx(lh,{source:e.source})]}),jsx("span",{className:`font-semibold truncate transition-all duration-300 ${l?"text-sm lg:text-base":"text-lg lg:text-xl"}`,children:p})]})]}),(m||u||c)&&jsx("div",{className:"flex items-center gap-x-2 text-xs lg:text-sm font-mono",children:c?g&&jsx("span",{className:"text-text-muted",children:s("predict.event.endedAt",{time:g})}):m?jsxs(Fragment,{children:[jsx("span",{className:"text-foreground",children:s("predict.event.beginsIn",{time:m})}),f&&jsxs(Fragment,{children:[jsx("span",{className:"text-text-muted/50",children:"\xB7"}),jsx("span",{className:"text-text-muted",children:f})]})]}):u?jsxs(Fragment,{children:[jsx("span",{className:"text-foreground",children:s("predict.event.endsIn",{time:u})}),g&&jsxs(Fragment,{children:[jsx("span",{className:"text-text-muted/50",children:"\xB7"}),jsx("span",{className:"text-text-muted",children:g})]})]}):null}),jsx(vs,{event:e,marketDataEnabled:t,volume:e.volume??void 0,orderbookQuotes:n}),jsx(ih,{markets:d,marketDataEnabled:t,marketDataOrderbooks:r,onMarketDataBookSelectionChange:o,orderbookQuotes:n,onTradeAction:i}),jsx(ah,{markets:d,event:e})]})}var Vl=5;function ih({markets:e,marketDataEnabled:t,marketDataOrderbooks:r,onMarketDataBookSelectionChange:o,orderbookQuotes:n,onTradeAction:i}){let{t:s}=useTranslation(),{isDesktop:a}=useScreen(),[l,p]=useState(false),[d,c]=useState(null),m=useMemo(()=>{let x=new Set;return e.filter(y=>x.has(y.slug)?false:(x.add(y.slug),true))},[e]),[u,f]=useState(null);if(m.length===0)return null;let g=m.length>Vl,b=l?m:m.slice(0,Vl),h=x=>{t&&o?.(bl(d,x.slug,u?.marketSlug===x.slug?u.outcomeKey:void 0)),c(y=>y===x.slug?null:x.slug);},S=(x,y,v,k)=>{f({marketSlug:x.slug,tradeOutcome:y,outcomeKey:k}),t&&o?.(yl(x.slug,k)),a&&c(x.slug),i?.(x,y,v);};return jsxs("div",{className:"flex flex-col",children:[jsxs("table",{className:"w-full border-collapse",children:[jsx("thead",{children:jsxs("tr",{children:[jsx("th",{}),jsx("th",{className:"py-2 text-left text-xs text-text-muted font-normal lg:text-center lg:text-sm",children:s("predict.market.table.chance")}),jsx("th",{})]})}),jsx("tbody",{children:b.map((x,y)=>{let v=d===x.slug;return jsx(sh,{market:x,activeSelection:u?.marketSlug===x.slug?u:void 0,isExpanded:v,orderbookQuotes:n,marketDataEnabled:t,marketDataOrderbooks:r,onToggleExpand:()=>h(x),onTradeAction:S,onUnselectedTradeAction:i},x.id??`${y}-${x.slug}`)})})]}),g&&jsxs("button",{type:"button",onClick:()=>p(x=>!x),className:"flex w-full items-center justify-start gap-x-2 py-2 pl-1 text-xs text-text-muted lg:pl-2 lg:text-sm cursor-pointer hover:text-foreground transition-colors",children:[jsx("span",{children:s(l?"predict.event.rules.collapse":"predict.event.moreMarketsLabel")}),jsx(ChevronDownIcon,{className:cn$1("h-4 w-4 transition-transform",l&&"rotate-180")})]})]})}function sh({market:e,activeSelection:t,isExpanded:r,orderbookQuotes:o,marketDataEnabled:n,marketDataOrderbooks:i,onToggleExpand:s,onTradeAction:a,onUnselectedTradeAction:l}){let{t:p}=useTranslation(),d=e.status==="open",c=e.volume?`${formatAmountInUsd(e.volume)} vol`:void 0,m=o?.get(Ze(e.slug,"yes"))?.bestAsk??zl(e,"yes"),u=o?.get(Ze(e.slug,"no"))?.bestAsk??zl(e,"no"),f=t?.tradeOutcome??"yes",g=t?.outcomeKey,b=kl(e.outcomes).map(S=>({...S,price:S.tradeOutcome==="yes"?m:u})),h=Sl({marketDataEnabled:n,marketSlug:e.slug,outcomeKey:g??"",books:i});return jsxs(Fragment,{children:[jsxs("tr",{className:"cursor-pointer border-b border-border text-xs hover:bg-content2 lg:text-base",onClick:s,role:"button",tabIndex:0,onKeyDown:S=>{(S.key==="Enter"||S.key===" ")&&(S.preventDefault(),s());},children:[jsx("td",{className:"py-2 pl-1 lg:pl-2",children:jsxs("div",{className:"flex items-center gap-x-1 lg:gap-x-2",children:[e.image_url&&jsx(Avatar,{src:e.image_url,name:An(e)?.[0]||"?",radius:"lg",className:"size-5 shrink-0 lg:size-8",imgProps:{className:"object-cover"}}),jsxs("div",{className:"flex flex-col",children:[jsx("span",{className:"text-foreground truncate max-w-[200px] lg:max-w-[300px]",children:An(e)}),c&&jsx("span",{className:"text-[8px] text-text-muted lg:text-xxs",children:c})]})]})}),jsx("td",{className:"py-2 text-left text-foreground lg:text-center",children:rh(m)}),jsx("td",{className:"py-2 pr-1 lg:pr-2",children:d?jsx("div",{className:"flex items-center justify-end gap-x-2",children:b.map(({catalogOutcome:S,tradeOutcome:x,price:y})=>jsx("button",{type:"button",className:cn$1("flex min-w-16 items-center justify-center whitespace-nowrap rounded-lg p-2 lg:min-w-24 cursor-pointer hover:opacity-80 transition-all focus-visible:outline-2 focus-visible:outline-primary/40 focus-visible:outline-offset-2",x==="yes"?t?.outcomeKey===S.key?"bg-primary text-primary-foreground":"bg-primary/10 text-primary":t?.outcomeKey===S.key?"bg-secondary text-secondary-foreground":"bg-secondary/10 text-secondary"),onClick:v=>{v.stopPropagation(),a?.(e,x,"buy",S.key);},children:y!=null?p(x==="yes"?"predict.market.action.yes":"predict.market.action.no",{price:oh(y)}):x==="yes"&&n?`${p("predict.market.yes")} \u2014`:p(x==="yes"?"predict.market.yes":"predict.market.no")},S.key))}):jsx("div",{className:"flex items-center justify-end",children:jsx("span",{className:cn$1("inline-flex items-center rounded-full px-2.5 py-0.5 text-xs font-medium",e.status==="closed"?"bg-text-muted/10 text-text-muted":e.status==="voided"?"bg-warning/10 text-warning":"bg-primary/10 text-primary"),children:e.status==="closed"?p("predict.event.status.closed"):e.status==="voided"?p("predict.event.status.voided"):p("predict.event.status.pending")})})})]}),r&&jsx("tr",{children:jsx("td",{colSpan:3,className:"pb-3",children:jsx("div",{className:"max-h-100 overflow-y-auto",children:jsx(fs,{market:e,outcome:f,onTradeAction:(S,x,y)=>{if(!g){l?.(S,x,y);return}a?.(S,x,y,g);},enabled:h.legacyEnabled,orderbook:h.orderbook})})})})]})}function ah({markets:e,event:t}){let{t:r}=useTranslation(),[o,n]=useState(false),[i,s]=useState(false),[a,l]=useState(0),p=e.filter(u=>u.rules&&u.rules.length>0||vi(u));if(p.length===0)return null;let d=p[a]??p[0],c=d.rules&&d.rules.length>0?d.rules.join(`
77
77
 
78
- `):vi(d)??"";if(!c)return null;let m=c.length>200&&!o?c.slice(0,200)+"...":c;return jsxs("div",{className:"flex flex-col gap-y-3",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{className:"text-sm font-semibold text-foreground lg:text-base",children:r("predict.event.rules")}),p.length>1&&jsxs(Dropdown,{placement:"bottom-end",classNames:{content:"min-w-36 bg-content1 border border-border"},children:[jsx(DropdownTrigger,{children:jsx(Button,{size:"sm",variant:"bordered",radius:"lg",endContent:jsx(ChevronDownIcon,{className:"h-3.5 w-3.5"}),className:"text-xs text-foreground",children:An(d)})}),jsx(DropdownMenu,{"aria-label":r("predict.event.selectRules"),selectionMode:"single",selectedKeys:[String(a)],onAction:u=>{l(Number(u)),n(false);},classNames:{list:"gap-1"},itemClasses:{base:"rounded-md px-3 h-8"},children:p.map((u,f)=>jsx(DropdownItem,{className:cn$1(f===a?"bg-content2 text-foreground":"text-text-muted","data-[hover=true]:bg-content2 data-[hover=true]:text-foreground"),children:An(u)},String(f)))})]})]}),jsx("div",{className:"text-xs text-foreground/80 lg:text-sm whitespace-pre-wrap",children:m}),c.length>200&&jsx("button",{type:"button",onClick:()=>n(u=>!u),className:"text-xs text-text-muted hover:text-foreground cursor-pointer transition-colors self-start",children:r(o?"predict.event.rules.collapse":"predict.event.showMore")}),jsxs("button",{type:"button",onClick:()=>s(u=>!u),className:"flex items-center justify-between w-full mt-2 text-xs font-medium text-text-muted lg:text-sm cursor-pointer hover:text-foreground transition-colors",children:[jsx("span",{children:r("predict.event.timelineAndPayout")}),jsx(ChevronDownIcon,{className:cn$1("h-4 w-4 transition-transform",i&&"rotate-180")})]}),i&&jsxs(Fragment,{children:[jsx("div",{className:"flex flex-col",children:(()=>{let u=d.status,f=[];return d.created_at&&f.push({label:r("predict.event.timeline.created"),value:Wo(d.created_at),isActive:true}),f.push({label:r("predict.event.timeline.open"),value:Wo(d.start_at),isActive:u!=="pending"}),u==="voided"?f.push({label:r("predict.event.timeline.voided"),value:Wo(d.closed_at??d.end_at),isActive:true}):u==="closed"?f.push({label:r("predict.event.timeline.closed"),value:Wo(d.closed_at??d.end_at),isActive:true}):f.push({label:r("predict.event.timeline.close"),value:Wo(d.end_at),isActive:false}),f})().map((u,f,g)=>jsxs("div",{className:"flex items-stretch gap-x-3",children:[jsxs("div",{className:"flex flex-col items-center w-3",children:[jsx("div",{className:`h-3 w-3 shrink-0 rounded-full border-2 mt-0.5 ${u.isActive?"border-primary bg-primary":"border-border bg-transparent"}`}),f<g.length-1&&jsx("div",{className:"w-px flex-1 bg-border"})]}),jsxs("div",{className:`flex flex-col ${f<g.length-1?"pb-4":""}`,children:[jsx("span",{className:"text-xs font-medium text-foreground lg:text-sm",children:u.label}),jsx("span",{className:"text-xs text-text-muted lg:text-sm",children:u.value})]})]},u.label))}),jsxs("div",{className:"flex flex-wrap items-center gap-x-3 text-xxs text-text-muted mt-2 lg:text-xs",children:[jsxs("span",{children:[jsxs("span",{className:"text-text-muted",children:[r("predict.event.id.event"),":"]})," ",jsx("span",{className:"text-foreground",children:t.slug})]}),jsxs("span",{children:[jsxs("span",{className:"text-text-muted",children:[r("predict.event.id.market"),":"]})," ",jsx("span",{className:"text-foreground",children:d.slug})]}),jsxs("span",{children:[jsxs("span",{className:"text-text-muted",children:[r("predict.event.id.source"),":"]})," ",jsx("span",{className:"text-foreground",children:nh(d.source)})]})]})]})]})}function lh({source:e}){return jsxs("span",{className:"inline-flex items-center gap-x-1 text-text-secondary",title:e==="polymarket"?"Polymarket":"Kalshi",children:[jsx("span",{className:"text-text-muted",children:"\xB7"}),e==="polymarket"?jsx(PolymarketIcon,{className:"h-5 w-auto shrink-0"}):jsx(KalshiIcon,{className:"h-3 w-auto shrink-0"})]})}var Yl="hsl(var(--heroui-content3) / 0.6)",fh="hsl(var(--heroui-content4) / 0.8)";function gh(e){return e==null?"-":formatAmountInUsd(e)}function bs({eventSlug:e,source:t,lang:r,limit:o=4,onEventClick:n,onEventHover:i}){let{t:s}=useTranslation(),{data:a,isLoading:l}=useSimilarEvents({slug:e,source:t,lang:r,limit:o});return l||!a||a.length===0?null:jsxs("div",{className:"flex flex-col gap-y-3 mt-6 px-1 lg:px-0",children:[jsx("div",{className:"-mx-1 px-1 py-1.5 lg:sticky lg:top-0 lg:z-10 lg:bg-surface-base",children:jsx("span",{style:{color:"var(--color-text-primary)",fontSize:14,fontWeight:600},children:s("predict.similar.title")})}),jsx("div",{className:"grid grid-cols-1 gap-2",children:a.map(p=>jsx(Ql,{event:p,onClick:n,onHover:i},`${p.source}-${p.slug}`))})]})}function Ql({event:e,onClick:t,onHover:r}){let{t:o}=useTranslation(),n=Kr(e),i=useMemo(()=>gh(e.volume),[e.volume]);return jsxs("button",{type:"button",onClick:()=>t?.(e),onMouseEnter:s=>{s.currentTarget.style.borderColor=fh,r?.(e);},onMouseLeave:s=>{s.currentTarget.style.borderColor=Yl;},style:{display:"flex",alignItems:"center",gap:10,padding:"10px 12px",borderRadius:14,border:`1px solid ${Yl}`,background:"hsl(var(--heroui-content2) / 0.4)",cursor:"pointer",textAlign:"left",width:"100%",transition:"border-color 0.2s"},className:"group",children:[jsx(Avatar,{src:e.image_url||void 0,name:n[0]||"?",radius:"full",className:"size-9 shrink-0 bg-transparent",imgProps:{className:"object-cover"}}),jsxs("div",{style:{display:"flex",flexDirection:"column",minWidth:0,flex:1,gap:2},children:[jsx("span",{style:{fontSize:13,fontWeight:500,color:"var(--color-text-primary)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:n}),jsxs("span",{style:{fontSize:10,color:"var(--color-text-secondary)"},children:[i," ",o("predict.event.volume")]})]}),jsx(ChevronRightIcon,{width:14,height:14,className:"shrink-0 opacity-0 group-hover:opacity-100 transition-opacity",style:{color:"var(--color-text-muted)"}})]})}var Un=100,yh=15e3,Wn=["yes","no"];function kh(e){return e.source??"polymarket"}function Sh(e){return {market_id:e.market_slug,outcome:e.outcome,bids:e.bids,asks:e.asks,spread:e.spread}}function Ph(e){let t=e.filter(r=>r.status==="open").map(r=>({slug:r.slug,source:kh(r)})).sort((r,o)=>r.slug.localeCompare(o.slug));return JSON.stringify(t)}function Nh(e){let t=e.filter(r=>r.status==="open").flatMap(r=>Wn.map(o=>({slug:r.slug,outcome:o}))).sort((r,o)=>{let n=r.slug.localeCompare(o.slug);return n!==0?n:r.outcome.localeCompare(o.outcome)});return JSON.stringify(t)}function Jl(e,t={}){let r=t.enabled??true,o=usePredictClient(),{wsClient:n}=usePredictWsClient(),i=useQueryClient(),s=useRef(new Set),a=useMemo(()=>r?Ph(e):"[]",[r,e]),l=useMemo(()=>JSON.parse(a),[a]),p=useMemo(()=>new Map(l.map(x=>[x.slug,x])),[l]),d=useMemo(()=>new Set(l.map(x=>x.slug)),[l]),c=useRef(d);c.current=d;let m=useRef(p);m.current=p;let u=useMemo(()=>r?Nh(e):"[]",[r,e]),f=useMemo(()=>JSON.parse(u),[u]),g=Bl(f),b=useCallback((x,y,v,k)=>{if(!k){_n(x,v);return}let P={...k,market_id:k.market_id||x,outcome:v};i.setQueryData(orderbookQueryKey(x,y,v),P),Fl(x,v,P);},[i]),h=useCallback(async(x,y)=>{try{let v=x.flatMap(P=>Wn.map(M=>({slug:P.slug,source:P.source,outcome:M}))),k=await o.getOrderbooks(v);if(y?.cancelled?.())return;for(let P of k){let M=P.outcome,N=Ze(P.slug,M);y?.markSeeded&&s.current.add(N),b(P.slug,P.source,M,P.orderbook);}}catch{if(!y?.markSeeded||y?.cancelled?.())return;for(let v of x)for(let k of Wn)s.current.add(Ze(v.slug,k));}},[b,o]);useEffect(()=>{if(!r){s.current.clear();return}let x=l.filter(v=>Wn.some(k=>!s.current.has(Ze(v.slug,k))));if(x.length===0)return;let y=false;return (async()=>{for(let v=0;v<x.length;v+=Un){if(y)return;await h(x.slice(v,v+Un),{cancelled:()=>y,markSeeded:true});}})(),()=>{y=true;}},[r,h,l]),useEffect(()=>{if(!r||l.length===0)return;let x=false,y=async()=>{for(let k=0;k<l.length;k+=Un){if(x)return;await h(l.slice(k,k+Un),{cancelled:()=>x});}},v=window.setInterval(()=>{y();},yh);return ()=>{x=true,window.clearInterval(v);}},[r,h,l]),useEffect(()=>{s.current.forEach(x=>{let[y,v]=x.split(":");d.has(y)||(s.current.delete(x),_n(y,v));});},[d]),useEffect(()=>{if(r&&n)return n.on("orderbook",x=>{let y=x.data.market_slug,v=x.data.outcome;if(v!=="yes"&&v!=="no"||!c.current.has(y))return;let k=m.current.get(y);k&&b(y,k.source,v,Sh(x.data));})},[b,r,n]);let S=useRef(new Set);return useEffect(()=>{if(!r){let k=S.current;n&&k.size>0&&n.unsubscribe(["orderbook"],Array.from(k)),S.current=new Set;return}if(!n)return;let x=S.current,y=[],v=[];d.forEach(k=>{x.has(k)||y.push(k);}),x.forEach(k=>{d.has(k)||v.push(k);}),y.length>0&&n.subscribe(["orderbook"],y),v.length>0&&n.unsubscribe(["orderbook"],v),S.current=new Set(d);},[r,d,n]),useEffect(()=>{if(n)return ()=>{let x=Array.from(S.current);x.length>0&&n.unsubscribe(["orderbook"],x),S.current=new Set;}},[n]),g}var Oh={enabled:false};function zn(e,t){return Jr(e.outcomes[0],t)??Number.NEGATIVE_INFINITY}function $n(e,t){if(!e.outcomes?.length)return e;let r=false,o=e.outcomes.map((n,i)=>{let s=i===0?"yes":"no",a=t.get(Ze(e.slug,s));if(!a)return n;let l=a.bestBid??n.best_bid,p=a.bestAsk??n.best_ask,d=a.bestAsk??n.price;return l===n.best_bid&&p===n.best_ask&&d===n.price?n:(r=true,{...n,best_bid:l,best_ask:p,price:d})});return r?{...e,outcomes:o}:e}function _h(e,t){if(!e.markets?.length||t.size===0)return e;let r=false,o=e.markets.map(n=>{let i=$n(n,t);return i!==n&&(r=true),i});return r?{...e,markets:o}:e}function Ih({eventSlug:e,source:t,chain:r,lang:o,walletAddress:n,onSimilarEventClick:i,onSimilarEventHover:s,onBack:a,renderActivitySection:l,onInsufficientBalance:p,onSetupRequired:d,slippageBps:c,marketDataCapability:m=Oh,marketDataEvent:u,marketDataOrderbooks:f,onMarketDataBookSelectionChange:g}){let{t:b}=useTranslation(),{isDesktop:h}=useScreen(),{onOpen:S}=useAsyncModal(qr),{onOpen:x}=useAsyncModal(En),{data:y,isLoading:v}=useEvent({slug:e,source:t,lang:o}),k=useMemo(()=>y&&Sn({capability:m,legacyEvent:y,marketDataEvent:u}),[y,m,u]),P=useMemo(()=>{let W=[...k?.markets||[]],te=W.filter(se=>se.status==="open").sort((se,he)=>zn(he,m.enabled)-zn(se,m.enabled)),ne=W.filter(se=>se.status!=="open").sort((se,he)=>zn(he,m.enabled)-zn(se,m.enabled));return [...te,...ne]},[k?.markets,m.enabled]),M=Jl(P,{enabled:!m.enabled}),N=useMemo(()=>k&&_h(k,M),[k,M]),w=useMemo(()=>M.size===0?P:P.map(W=>$n(W,M)),[P,M]),[R,A]=useState(null),X=useCallback((W,te,ne)=>{let se=w.find(Pe=>Pe.slug===W.slug)??$n(W,M),he=N??k;A(Pe=>({market:se,outcome:te,side:ne,version:(Pe?.version??0)+1})),!h&&he&&(ne==="sell"?x({params:{event:he,market:se,initialOutcome:te,chain:r,slippageBps:c,onSetupRequired:d}}):S({params:{event:he,market:se,initialOutcome:te,chain:r,slippageBps:c,onInsufficientBalance:p}}));},[h,k,N,w,M,r,c,S,x,p,d]),L=useMemo(()=>{let W=R?.market.slug;return W?w.find(te=>te.slug===W)??$n(R.market,M):w[0]},[w,M,R?.market]);if(v){let W=!!a;return h?jsxs("div",{className:"flex w-full max-w-6xl mx-auto gap-x-4 lg:gap-x-6",children:[jsx("div",{className:"min-w-0 flex-1 max-w-3xl",children:jsx(ro,{showBack:W})}),jsx("aside",{className:"hidden lg:block w-[340px] xl:w-[380px] shrink-0",children:jsx("div",{className:"sticky top-4 max-h-[calc(100dvh-2rem)] overflow-y-auto scrollbar-thin",children:jsx(cs,{})})})]}):jsx(ro,{showBack:W})}if(!y)return jsx("div",{className:"flex w-full items-center justify-center py-20 text-danger",children:b("predict.event.notFound")});let G=N??k??y,U=R?`${R.market.slug}-${R.version}`:L?.slug??"default",oe=R?.side==="sell";return jsxs("div",{className:"flex w-full flex-col gap-y-4 pb-12 lg:max-w-7xl lg:gap-y-8 lg:pb-16 mx-auto",children:[jsxs("div",{className:"flex w-full justify-center gap-4 pt-4 lg:gap-6",children:[jsxs("div",{className:"flex-auto min-w-0 flex flex-col gap-y-4 px-4 lg:gap-y-6 lg:px-0",children:[a&&jsx("div",{className:"flex items-center justify-between",children:jsx(Button,{as:"a",onPress:a,startContent:jsx(ChevronLeftIcon,{className:"h-4 w-4"}),className:"text-text-muted bg-transparent h-5 min-h-5 gap-x-2 p-0 text-base w-auto min-w-auto",children:b("common.back")})}),jsx($o,{event:G,marketDataEnabled:m.enabled,marketDataOrderbooks:f,onMarketDataBookSelectionChange:g,orderbookQuotes:M,onTradeAction:X})]}),jsxs("div",{className:"hidden flex-none w-md flex-col gap-y-4 lg:sticky lg:top-4 lg:flex lg:self-start",children:[L&&(oe?jsx(_o,{event:G,market:L,initialOutcome:R?.outcome,chain:r,slippageBps:c,onSetupRequired:d},U):jsx(Eo,{event:G,market:L,initialOutcome:R?.outcome,chain:r,slippageBps:c,onInsufficientBalance:p},U)),y&&jsx(bs,{eventSlug:e,source:G.source,lang:o,onEventClick:i,onEventHover:s})]})]}),y&&jsx("div",{className:"flex w-full flex-col",children:l?l({event:G,walletAddress:n}):jsx(ss,{event:G,walletAddress:n})}),jsx(Co,{}),jsx(ts,{}),jsx(Gi,{})]})}function Fh({eventSlug:e,source:t,lang:r,onTradeAction:o}){let{t:n}=useTranslation(),{data:i,isLoading:s,error:a}=useEvent({slug:e,source:t,lang:r});return s?jsx(ro,{}):a||!i?jsx("div",{className:"flex w-full items-center justify-center py-20 text-danger",children:a?.message||n("predict.event.notFound")}):jsx($o,{event:i,onTradeAction:o})}function ec(e){return e.outcomes[0]?.best_ask??e.outcomes[0]?.price??0}function zh(e){switch(e){case $.ONE_HOUR:return {interval:"1m",limit:100};case $.SIX_HOURS:return {interval:"5m",limit:72};case $.ONE_DAY:return {interval:"5m",limit:288};case $.ONE_MONTH:return {interval:"1h",limit:720};case $.ALL:return {interval:"1d",limit:300};default:return {interval:"1h",limit:100}}}var $h=e=>{let{candlestickMarketSlugs:t,chartRange:r=bo,source:o}=e,n=usePredictClient(),i=useMemo(()=>zh(r),[r]),{data:s,isLoading:a,error:l}=useEvent({slug:e.eventSlug,source:o}),p=useMemo(()=>{if(!s)return [];let f=new Set,g=In(s).filter(h=>f.has(h.slug)?false:(f.add(h.slug),true));return (t&&t.length>0?t.slice(0,4).map(h=>g.find(S=>S.slug===h)).filter(h=>h!==void 0):[...g].sort((h,S)=>ec(S)-ec(h)).slice(0,4)).map(h=>h.slug)},[t,s]),d=useQueries({queries:p.map(f=>({queryKey:candlesticksQueryKey(f,i),queryFn:()=>n.listCandlesticks(f,i),enabled:p.length>0}))}),c=d.some(f=>f.isLoading),m=useMemo(()=>{let f=new Map;return p.forEach((g,b)=>{let h=d[b]?.error;h&&f.set(g,h);}),f},[p,d]),u=useMemo(()=>{let f=new Map;return p.forEach((g,b)=>{let h=d[b]?.data;h&&f.set(g,h);}),f},[p,d]);return {event:s,isEventLoading:a,eventError:l,candlestickParams:i,candlesticks:u,isCandlesticksLoading:c,candlestickErrors:m}};function Gn({comment:e,anonymousLabel:t,isReply:r=false}){let{profile:o}=e,n=o.name||o.pseudonym||t,i=useMemo(()=>Gh(e.created_at),[e.created_at]);return jsxs("div",{className:cn$1("flex gap-x-2.5 px-1 py-3 border-b border-border/40 lg:px-2",r&&"pl-8 lg:pl-9"),children:[jsx(Kh,{src:o.profile_image,name:n,className:cn$1("shrink-0",r?"size-6":"size-8 lg:size-7")}),jsxs("div",{className:"min-w-0 flex-1",children:[jsxs("div",{className:"flex items-baseline gap-x-2",children:[jsx("span",{className:"truncate text-sm font-medium text-foreground",children:n}),jsx("span",{className:"ml-auto shrink-0 text-xs text-text-muted",children:i})]}),jsx("p",{className:"mt-1 whitespace-pre-wrap break-words text-sm leading-relaxed text-foreground/90",children:e.body}),jsxs("div",{className:"mt-2 flex items-center gap-x-1 text-text-muted",children:[jsx(Vh,{className:"size-3.5"}),jsx("span",{className:"text-xs tabular-nums",children:e.reaction_count})]})]})]})}function Kh({src:e,name:t,className:r}){let o=t.trim().charAt(0).toUpperCase()||"?",n=useMemo(()=>jh(t),[t]);return e?jsx("img",{src:e,alt:t,loading:"lazy",className:cn$1("rounded-full object-cover",r)}):jsx("span",{className:cn$1("flex items-center justify-center rounded-full text-xs font-semibold text-text-primary",r),style:{backgroundColor:n},"aria-hidden":true,children:o})}function Vh({className:e}){return jsx("svg",{viewBox:"0 0 24 24",className:e,fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":true,children:jsx("path",{d:"M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z"})})}function jh(e){let t=0;for(let o=0;o<e.length;o++)t=e.charCodeAt(o)+((t<<5)-t);return `hsl(${Math.abs(t)%360}, 55%, 45%)`}function Gh(e){let t=new Date(e).getTime();if(Number.isNaN(t))return "";let r=Math.max(0,Math.floor((Date.now()-t)/1e3));if(r<60)return "now";let o=Math.floor(r/60);if(o<60)return `${o}m`;let n=Math.floor(o/60);if(n<24)return `${n}h`;let i=Math.floor(n/24);if(i<7)return `${i}d`;let s=Math.floor(i/7);return s<5?`${s}w`:new Date(t).toLocaleDateString(void 0,{month:"short",day:"numeric"})}var ov={latest:{order:"createdAt",ascending:false},oldest:{order:"createdAt",ascending:true},mostLiked:{order:"reactionCount",ascending:false}},oc={latest:"predict.comments.sortLatest",oldest:"predict.comments.sortOldest",mostLiked:"predict.comments.sortMostLiked"},nv=["latest","oldest","mostLiked"],iv=600,sv=112;function ac({slug:e,source:t,limit:r=20,height:o,className:n}){let{t:i}=useTranslation(),[s,a]=useState("latest"),[l,p]=useState(false),d=ov[s],{data:c,isLoading:m,isFetchingNextPage:u,hasNextPage:f,fetchNextPage:g}=useInfiniteComments({slug:e,source:t,limit:r,order:d.order,ascending:d.ascending,holders_only:l}),b=useMemo(()=>c?.pages?.flatMap(w=>w.items)??[],[c?.pages]),h=useRef(null),{height:S}=useResizeObserver({ref:h}),x=o??(S||iv),y=useDynamicRowHeight({defaultRowHeight:sv,key:`${e}:${t}:${s}:${l}`}),v=b.length,k=v+(f?1:0),P=useCallback(w=>w<v,[v]),M=useCallback(async()=>{f&&!u&&await g();},[f,u,g]),N=useInfiniteLoader({isRowLoaded:P,loadMoreRows:M,rowCount:k,threshold:5});return jsxs("div",{className:cn$1("flex h-full w-full flex-col",n),children:[jsx(lv,{sort:s,onSortChange:a,holdersOnly:l,onHoldersOnlyChange:p}),jsx("div",{className:"min-h-0 flex-auto overflow-hidden",ref:h,children:m?jsx(cv,{}):b.length===0?jsx(dv,{message:i("predict.comments.empty")}):jsx(List,{className:"no-scrollbar",style:{height:x},onRowsRendered:N,rowComponent:av,rowCount:k,rowHeight:y,rowProps:{comments:b,itemCount:v,anonymousLabel:i("predict.comments.anonymous")},overscanCount:4})})]})}function av({index:e,style:t,comments:r,itemCount:o,anonymousLabel:n}){if(e>=o)return jsx("div",{style:t,className:"flex items-center justify-center py-4",children:jsx(Spinner,{size:"sm"})});let i=r[e];return i?jsx("div",{style:t,children:jsx(Gn,{comment:i,anonymousLabel:n,isReply:!!i.parent_comment_id})}):null}function lv({sort:e,onSortChange:t,holdersOnly:r,onHoldersOnlyChange:o}){let{t:n}=useTranslation(),[i,s]=useState(false),a=useRef(null);return useEffect(()=>{if(!i)return;let l=d=>{a.current&&!a.current.contains(d.target)&&s(false);},p=d=>{d.key==="Escape"&&s(false);};return document.addEventListener("mousedown",l),document.addEventListener("keydown",p),()=>{document.removeEventListener("mousedown",l),document.removeEventListener("keydown",p);}},[i]),jsxs("div",{className:"flex items-center justify-between gap-2 px-1 py-2 lg:px-2",children:[jsxs("div",{ref:a,className:"relative",children:[jsxs("button",{type:"button",onClick:()=>s(l=>!l),className:"inline-flex items-center gap-x-1.5 rounded-lg border border-border bg-content2/40 px-3 py-1.5 text-sm text-foreground transition-colors hover:bg-content2 cursor-pointer",children:[jsx(uv,{className:"size-3.5 text-text-muted"}),jsx("span",{children:n(oc[e])}),jsx(pv,{className:cn$1("size-3.5 text-text-muted transition-transform",i&&"rotate-180")})]}),i&&jsx("div",{className:"absolute left-0 top-full z-20 mt-1.5 min-w-40 overflow-hidden rounded-xl border border-border bg-content1 p-1 shadow-xl",children:nv.map(l=>{let p=l===e;return jsxs("button",{type:"button",onClick:()=>{t(l),s(false);},className:cn$1("flex w-full items-center gap-x-2 rounded-lg px-3 py-2 text-left text-sm transition-colors cursor-pointer",p?"bg-primary/10 text-primary":"text-text-muted hover:bg-content2 hover:text-foreground"),children:[jsx("span",{className:"flex-1 font-medium",children:n(oc[l])}),p&&jsx(nc,{className:"size-4 text-primary"})]},l)})})]}),jsxs("button",{type:"button",role:"switch","aria-checked":r,onClick:()=>o(!r),className:cn$1("inline-flex items-center gap-x-1.5 rounded-lg border px-3 py-1.5 text-sm transition-colors cursor-pointer",r?"border-primary/40 bg-primary/10 text-primary":"border-border bg-content2/40 text-text-muted hover:text-foreground"),children:[jsx("span",{className:cn$1("flex size-4 items-center justify-center rounded border",r?"border-primary bg-primary":"border-border-control"),children:r&&jsx(nc,{className:"size-3 text-background"})}),n("predict.comments.holdersOnly")]})]})}function cv(){return jsx("div",{className:"flex flex-col gap-y-4 px-1 py-3 lg:px-2",children:Array.from({length:6}).map((e,t)=>jsxs("div",{className:"flex gap-x-2.5",children:[jsx(Skeleton,{className:"size-8 shrink-0 rounded-full"}),jsxs("div",{className:"flex-1 space-y-2",children:[jsx(Skeleton,{className:"h-3 w-24 rounded"}),jsx(Skeleton,{className:"h-3 w-full rounded"}),jsx(Skeleton,{className:"h-3 w-2/3 rounded"})]})]},t))})}function dv({message:e}){return jsxs("div",{className:"flex flex-col items-center justify-center py-16",children:[jsx(EmptyIcon,{width:28,height:28,className:"text-text-muted"}),jsx("p",{className:"mt-2 text-sm text-text-muted",children:e})]})}function uv({className:e}){return jsxs("svg",{viewBox:"0 0 24 24",className:e,fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":true,children:[jsx("path",{d:"m21 16-4 4-4-4"}),jsx("path",{d:"M17 20V4"}),jsx("path",{d:"m3 8 4-4 4 4"}),jsx("path",{d:"M7 4v16"})]})}function pv({className:e}){return jsx("svg",{viewBox:"0 0 24 24",className:e,fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":true,children:jsx("path",{d:"m6 9 6 6 6-6"})})}function nc({className:e}){return jsx("svg",{viewBox:"0 0 24 24",className:e,fill:"none",stroke:"currentColor",strokeWidth:"3",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":true,children:jsx("path",{d:"M20 6 9 17l-5-5"})})}var mv=["signing","submitting","confirming","succeeded"];function fv(e){return {status:e,canSubmit:!mv.includes(e),canCancel:e!=="succeeded"&&e!=="submitting"&&e!=="confirming"}}var yv=10,cc="liberfi:predict_search_histories";function uo(){return createBrowserSearchHistoryStorage({key:cc,fallback:createMemorySearchHistoryStorage()})}function kv(e,t){return e.length===t.length&&e.every((r,o)=>r===t[o])}function Ss(){let e=useMemo(()=>uo(),[]),t=useRef(e.read()),r=()=>{let s=e.read();return kv(t.current,s)?t.current:(t.current=s,s)},o=useSyncExternalStore(e.subscribe,r,r),n=useCallback(s=>{let a=s.trim();if(!a)return;let l=e.read().filter(p=>p!==a);e.write([a,...l].slice(0,yv));},[e]),i=useCallback(()=>{e.clear();},[e]);return {histories:o,addHistory:n,clearHistories:i}}function Ps({histories:e,onSelect:t,onClear:r,className:o}){let{t:n}=useTranslation();return e.length===0?null:jsxs("div",{className:cn$1("px-4 pb-4",o),children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{className:"text-sm font-medium",children:n("predict.search.history")}),jsx(Button,{isIconOnly:true,size:"sm",className:"bg-transparent min-w-6 w-6 h-6 text-text-muted",onPress:r,children:jsx(TrashIcon,{width:20,height:20})})]}),jsx("div",{className:"flex flex-wrap gap-2 mt-2",children:e.map(i=>jsx(Chip,{size:"sm",variant:"bordered",className:cn$1("text-text-muted","border-border border-1","cursor-pointer","hover:opacity-hover"),onClick:()=>t?.(i),children:i},i))})]})}function Ns({onSelect:e,histories:t,onClear:r,className:o}){let n=Ss(),i=t?[...t]:n.histories,s=r??n.clearHistories;return jsx(Ps,{className:cn$1(o),histories:i,onSelect:e,onClear:s})}var Iv=["ArrowDown","ArrowUp","Enter","Escape"];function Dv(e){return Iv.includes(e)}function Ms({value:e,onValueChange:t,onClear:r,onEscape:o,onNavigateKey:n,className:i}){let{t:s}=useTranslation();return jsx("div",{className:i,children:jsx(StyledInput,{autoFocus:true,variant:"bordered",radius:"lg",value:e,onValueChange:t,onKeyDown:a=>{Dv(a.key)&&(a.key!=="Escape"&&a.preventDefault(),n?.(a.key));},placeholder:s("predict.search.placeholder"),classNames:{inputWrapper:["!bg-surface-strong/60","!border-border-control/50","data-[hover=true]:!bg-surface-strong","group-data-[focus=true]:!bg-surface-strong","group-data-[focus=true]:!border-border-control/80"].join(" ")},startContent:jsx(SearchIcon,{width:20,height:20,className:"text-text-muted"}),endContent:e?jsx(Button,{isIconOnly:true,className:"bg-transparent min-w-6 w-6 h-6 text-text-muted",onPress:r,children:jsx(XCloseIcon,{width:20,height:20})}):jsx(Kbd,{className:"min-w-8 justify-center text-xs text-text-muted bg-transparent border border-border-control/50 rounded-lg cursor-pointer select-none",onMouseDown:a=>{a.preventDefault(),o?.();},children:s("common.escape")})})})}function Wv(e){switch(e.result_type){case "match_group":return "predict.search.type.match";case "prop_event":return "predict.search.type.prop";case "market":return "predict.search.type.market";default:return "predict.search.type.event"}}function zv({actionRef:e,...t}){return jsx("div",{ref:e,...t})}function Es({result:e,href:t,LinkComponent:r,onSelect:o,onHover:n,highlighted:i=false,actionRef:s,className:a}){let{t:l}=useTranslation(),p=e.title,d=useMemo(()=>[l(Wv(e)),e.section,e.status].filter(Boolean).join(" \xB7 "),[e,l]),c=useMemo(()=>{function u({...f}){return jsx(r??"a",{ref:s,...f})}return u},[r,s]),m=useMemo(()=>{function u(f){return jsx(zv,{...f,actionRef:s})}return u},[s]);return jsxs(Linkable,{href:t,LinkComponent:c,as:m,className:cn$1("group w-full h-full px-3 flex items-center gap-3","hover:cursor-pointer hover:bg-content2 rounded-lg","transition-colors duration-150",i&&"bg-content2",a),"data-highlighted":i?"true":"false","aria-selected":i,onClick:u=>{t&&o&&u.preventDefault(),o?.(e);},onMouseEnter:()=>n?.(e),children:[jsx(Avatar,{src:void 0,name:p||l("predict.event.fallbackName"),radius:"full",className:"h-10 w-10 flex-shrink-0"}),jsxs("div",{className:"flex-1 min-w-0 flex flex-col justify-center gap-y-0.5",children:[jsx("span",{className:"min-w-0 text-sm font-medium line-clamp-2 group-hover:text-primary transition-colors",children:p}),jsx("div",{className:"flex items-center gap-x-2 text-[10px] font-normal text-text-muted lg:text-xs",children:jsx("span",{className:"text-text-secondary",children:d||l("predict.search.title")})})]}),jsx(ChevronRightIcon,{width:16,height:16,className:"shrink-0 text-text-muted opacity-0 group-hover:opacity-100 transition-opacity"})]})}function Cs({keyword:e="",limit:t,source:r}){let{data:o,isLoading:n,isFetchingNextPage:i,hasNextPage:s,fetchNextPage:a}=useInfinitePredictSearch({q:e,limit:t,source:r,sort_by:e?void 0:"volume",sort_asc:e?void 0:false},{enabled:true}),l=useMemo(()=>o?.pages.flatMap(p=>p.items).filter(p=>p!=null)??[],[o]);return {results:l,items:l,isLoading:n,isFetchingNextPage:i,hasNextPage:s??false,fetchNextPage:a}}var Zv=64;function Rs({onSelect:e,getEventHref:t,LinkComponent:r,onHover:o,className:n,navigationRef:i,onEscape:s,...a}){let{results:l,isLoading:p,isFetchingNextPage:d,hasNextPage:c,fetchNextPage:m}=Cs(a),u=useRef(null),{height:f}=useResizeObserver({ref:u}),g=useRef(null),[b,h]=useState(null),S=useRef(null);S.current=b;let x=a.keyword??"",y=x==="",v=y||p?0:l.length,k=useCallback(L=>L<l.length,[l]),P=useCallback(async()=>{c&&!d&&await m();},[c,d,m]),M=useMemo(()=>c?l.length+1:l.length,[l,c]),N=useInfiniteLoader({isRowLoaded:k,loadMoreRows:P,rowCount:M,threshold:5}),w=useCallback(()=>{S.current=null,h(null);},[]),R=useCallback(L=>{if(L<0||L>=l.length){w();return}S.current=L,h(L),g.current?.scrollToRow({index:L,align:"smart",behavior:"auto"});},[w,g,l.length]),A=useSearchKeyboardNavigation({itemCount:v,hasNextPage:c&&!y&&!p,isFetchingNextPage:d,onSelectIndex:L=>{R(L);},onRequestNextPage:()=>{c&&!d&&m();},onEscape:()=>s?.()});i&&(i.current=A),useEffect(()=>()=>{i&&i.current===A&&(i.current=null);},[A,i]),useEffect(()=>(A.reset(),w(),()=>{w();}),[x,A,w]);let X=useCallback(L=>S.current!==L?false:(S.current=null,h(null),true),[]);return p?jsx(tx,{className:n}):l.length===0?jsx(rx,{className:n}):jsx("div",{className:cn$1("w-full h-full flex flex-col",n),children:jsx("div",{className:"flex-auto min-h-0",ref:u,children:jsx(List,{className:"no-scrollbar",style:{height:f},listRef:g,onRowsRendered:N,rowComponent:ex,rowCount:M,rowHeight:Zv,rowProps:{results:l,onSelect:e,getEventHref:t,LinkComponent:r,onHover:o,highlightedIndex:y?null:A.highlightedIndex,pendingIndex:y?null:b,consumePending:X},overscanCount:5})})})}function ex({index:e,style:t,results:r,onSelect:o,getEventHref:n,LinkComponent:i,onHover:s,highlightedIndex:a,pendingIndex:l,consumePending:p}){let d=r[e],c=useRef(null);return useLayoutEffect(()=>{l===e&&p(e)&&c.current?.click();},[p,e,l]),d?jsx("div",{style:t,"data-index":e,children:jsx(Es,{result:d,href:n?.(d)??d.detail_url,LinkComponent:i,onSelect:o,onHover:s,highlighted:a===e,actionRef:c})}):jsx("div",{style:t,className:"flex items-center justify-center",children:jsx(Spinner,{size:"sm"})})}function tx({className:e}){let{t}=useTranslation();return jsxs("div",{className:cn$1("flex items-center justify-center gap-2 py-16",e),children:[jsx(Spinner,{size:"sm"}),jsx("span",{className:"text-sm text-text-muted",children:t("predict.search.loading")})]})}function rx({className:e}){let{t}=useTranslation();return jsxs("div",{className:cn$1("flex flex-col items-center justify-center py-16",e),children:[jsx(EmptyIcon,{width:28,height:28,className:"text-text-muted"}),jsx("p",{className:"mt-2 text-sm text-text-muted",children:t("predict.search.noResults")})]})}var vc=()=>{};function Os({onKeywordChange:e,onSelectResult:t,getEventHref:r,LinkComponent:o,onHover:n,onEscape:i,source:s}){let a=useMemo(()=>uo(),[]),l=useSearchController({storage:a,onQueryChange:e??vc,onDismiss:i??vc}),p=useRef(null),d=l.dismiss,c=useCallback(m=>{if(p.current){p.current.onKey(m);return}m==="Escape"&&d();},[d]);return jsxs("div",{className:"w-full h-full flex flex-col gap-3",children:[jsx(Ms,{value:l.text,onValueChange:l.setText,onClear:l.clearQuery,onEscape:l.dismiss,onNavigateKey:c}),!l.query&&jsx(Ns,{histories:l.history,onSelect:l.commitQuery,onClear:l.clearHistory}),jsx(Rs,{className:"flex-auto min-h-0",keyword:l.query,onSelect:t,getEventHref:r,LinkComponent:o,onHover:n,source:s,navigationRef:p,onEscape:l.dismiss})]})}var Qn="predict-search";function vx({id:e=Qn}){return jsx(AsyncModal,{id:e,children:t=>jsx(xx,{...t})})}function xx({params:e,isOpen:t,onOpenChange:r,onResult:o}){let{t:n}=useTranslation(),{isMobile:i}=useScreen(),s=useCallback(l=>{o(l);},[o]),a=useCallback(()=>{r(false);},[r]);return jsx(StyledModal,{isOpen:t,onOpenChange:r,size:i?"full":"lg",hideCloseButton:true,backdrop:"opaque",radius:"lg",children:jsxs(ModalContent,{className:"w-full h-full",style:{borderRadius:i?void 0:14,border:i?void 0:"1px solid var(--color-border-control)",background:"var(--color-surface-interactive)",boxShadow:i?void 0:"0 25px 50px -12px rgba(0,0,0,0.5)",overflow:"hidden"},children:[jsxs(ModalHeader,{className:"sm:hidden flex items-center justify-between pt-4 pb-2",children:[jsx("span",{className:"text-base font-semibold",children:n("predict.search.title")}),jsx(Button,{isIconOnly:true,onPress:()=>r(false),size:"sm",className:"bg-transparent min-w-6 w-6 h-6",children:jsx(XCloseIcon,{width:20,height:20})})]}),jsx(ModalBody,{className:"p-4",children:jsx(Os,{getEventHref:e?.getEventHref,LinkComponent:e?.LinkComponent,onHover:e?.onHover,source:e?.source,onSelectResult:s,onEscape:a})})]})})}function Nx({onSelectEvent:e,modalParams:t,className:r}){let{t:o}=useTranslation(),{isDesktop:n}=useScreen(),{onOpen:i,onClose:s}=useAsyncModal(Qn),a=useCallbackRef(e),l=useCallbackRef(async()=>{let d=await i({params:t});d&&a(d);}),p=useCallbackRef(()=>{s();});return useEffect(()=>{let d=c=>{let m=document.activeElement,u=!!m&&(m.tagName==="INPUT"||m.tagName==="TEXTAREA"||m.getAttribute("contenteditable")==="true");c.key==="/"&&!u&&(c.preventDefault(),l()),c.key==="Escape"&&(c.preventDefault(),p());};return window.addEventListener("keydown",d),()=>{window.removeEventListener("keydown",d);}},[l,p]),n?jsx(Button,{size:"sm",radius:"full",onPress:l,variant:"bordered",startContent:jsx(SearchIcon,{width:16,height:16,className:"text-foreground"}),endContent:jsx(Kbd,{className:"min-w-6 justify-center text-xs text-foreground bg-content3 rounded-lg",children:"/"}),className:cn$1("w-56 min-w-0 h-8 min-h-0 border-transparent hover:border-border bg-content2 pl-3 pr-1.5 text-text-muted",r),children:o("predict.search.placeholder")}):jsx(Button,{size:"sm",radius:"full",isIconOnly:true,onPress:l,variant:"bordered",className:cn$1("w-8 min-w-0 h-8 min-h-0 border-1 border-border bg-content2",r),children:jsx(SearchIcon,{width:16,height:16,className:"text-foreground"})})}var Pc=()=>{};function Ex({onKeywordChange:e}){let t=useMemo(()=>uo(),[]),r=useSearchController({storage:t,onQueryChange:e??Pc,onDismiss:Pc});return {text:r.text,keyword:r.query,setText:r.setText,setKeyword:r.commitQuery,clearKeyword:r.clearQuery}}var Is=[{value:"spread",labelKey:"predict.matches.sort.spread",descKey:"predict.matches.sort.spreadDesc",icon:"trending-up"},{value:"volume",labelKey:"predict.matches.sort.volume",descKey:"predict.matches.sort.volumeDesc",icon:"chart-column"},{value:"confidence",labelKey:"predict.matches.sort.confidence",descKey:"predict.matches.sort.confidenceDesc",icon:"flame"}],Tc=[{labelKey:"predict.matches.filter.noMinimum",label:"$0",value:0},{labelKey:null,label:"$100+",value:100},{labelKey:null,label:"$500+",value:500},{labelKey:null,label:"$1K+",value:1e3},{labelKey:null,label:"$5K+",value:5e3},{labelKey:null,label:"$10K+",value:1e4},{labelKey:null,label:"$50K+",value:5e4},{labelKey:null,label:"$100K+",value:1e5}],wc={display:"inline-flex",alignItems:"center",gap:8,borderRadius:10,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content3) / 0.6)",padding:"8px 12px",fontSize:14,color:"var(--color-text-primary)",cursor:"pointer",transition:"all 0.15s"},Ec={position:"absolute",right:0,top:"100%",zIndex:20,marginTop:8,borderRadius:14,border:"1px solid var(--color-border-control)",background:"var(--color-surface-interactive)",boxShadow:"0 25px 50px -12px rgba(0,0,0,0.5)",overflow:"hidden"};function Rx(e,t){if(!e)return "$5K+";let r=Tc.find(o=>o.value===e);return r?r.labelKey?t(r.labelKey):r.label:`$${e}`}function Ds({sortBy:e,onSortChange:t,sortAsc:r,onSortAscChange:o,minVolume:n,onMinVolumeChange:i,onRefresh:s}){let{t:a}=useTranslation(),[l,p]=useState(false),[d,c]=useState(false),[m,u]=useState(false),[f,g]=useState(false),b=useRef(null),h=useRef(null),S=Is.find(v=>v.value===e)??Is[0],x=useCallback(v=>{b.current&&!b.current.contains(v.target)&&p(false),h.current&&!h.current.contains(v.target)&&c(false);},[]);useEffect(()=>(document.addEventListener("mousedown",x),()=>document.removeEventListener("mousedown",x)),[x]);let y=useCallback(()=>{s?.(),g(true),setTimeout(()=>g(false),700);},[s]);return jsxs(Fragment,{children:[jsx("style",{children:`
78
+ `):vi(d)??"";if(!c)return null;let m=c.length>200&&!o?c.slice(0,200)+"...":c;return jsxs("div",{className:"flex flex-col gap-y-3",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{className:"text-sm font-semibold text-foreground lg:text-base",children:r("predict.event.rules")}),p.length>1&&jsxs(Dropdown,{placement:"bottom-end",classNames:{content:"min-w-36 bg-content1 border border-border"},children:[jsx(DropdownTrigger,{children:jsx(Button,{size:"sm",variant:"bordered",radius:"lg",endContent:jsx(ChevronDownIcon,{className:"h-3.5 w-3.5"}),className:"text-xs text-foreground",children:An(d)})}),jsx(DropdownMenu,{"aria-label":r("predict.event.selectRules"),selectionMode:"single",selectedKeys:[String(a)],onAction:u=>{l(Number(u)),n(false);},classNames:{list:"gap-1"},itemClasses:{base:"rounded-md px-3 h-8"},children:p.map((u,f)=>jsx(DropdownItem,{className:cn$1(f===a?"bg-content2 text-foreground":"text-text-muted","data-[hover=true]:bg-content2 data-[hover=true]:text-foreground"),children:An(u)},String(f)))})]})]}),jsx("div",{className:"text-xs text-foreground/80 lg:text-sm whitespace-pre-wrap",children:m}),c.length>200&&jsx("button",{type:"button",onClick:()=>n(u=>!u),className:"text-xs text-text-muted hover:text-foreground cursor-pointer transition-colors self-start",children:r(o?"predict.event.rules.collapse":"predict.event.showMore")}),jsxs("button",{type:"button",onClick:()=>s(u=>!u),className:"flex items-center justify-between w-full mt-2 text-xs font-medium text-text-muted lg:text-sm cursor-pointer hover:text-foreground transition-colors",children:[jsx("span",{children:r("predict.event.timelineAndPayout")}),jsx(ChevronDownIcon,{className:cn$1("h-4 w-4 transition-transform",i&&"rotate-180")})]}),i&&jsxs(Fragment,{children:[jsx("div",{className:"flex flex-col",children:(()=>{let u=d.status,f=[];return d.created_at&&f.push({label:r("predict.event.timeline.created"),value:zo(d.created_at),isActive:true}),f.push({label:r("predict.event.timeline.open"),value:zo(d.start_at),isActive:u!=="pending"}),u==="voided"?f.push({label:r("predict.event.timeline.voided"),value:zo(d.closed_at??d.end_at),isActive:true}):u==="closed"?f.push({label:r("predict.event.timeline.closed"),value:zo(d.closed_at??d.end_at),isActive:true}):f.push({label:r("predict.event.timeline.close"),value:zo(d.end_at),isActive:false}),f})().map((u,f,g)=>jsxs("div",{className:"flex items-stretch gap-x-3",children:[jsxs("div",{className:"flex flex-col items-center w-3",children:[jsx("div",{className:`h-3 w-3 shrink-0 rounded-full border-2 mt-0.5 ${u.isActive?"border-primary bg-primary":"border-border bg-transparent"}`}),f<g.length-1&&jsx("div",{className:"w-px flex-1 bg-border"})]}),jsxs("div",{className:`flex flex-col ${f<g.length-1?"pb-4":""}`,children:[jsx("span",{className:"text-xs font-medium text-foreground lg:text-sm",children:u.label}),jsx("span",{className:"text-xs text-text-muted lg:text-sm",children:u.value})]})]},u.label))}),jsxs("div",{className:"flex flex-wrap items-center gap-x-3 text-xxs text-text-muted mt-2 lg:text-xs",children:[jsxs("span",{children:[jsxs("span",{className:"text-text-muted",children:[r("predict.event.id.event"),":"]})," ",jsx("span",{className:"text-foreground",children:t.slug})]}),jsxs("span",{children:[jsxs("span",{className:"text-text-muted",children:[r("predict.event.id.market"),":"]})," ",jsx("span",{className:"text-foreground",children:d.slug})]}),jsxs("span",{children:[jsxs("span",{className:"text-text-muted",children:[r("predict.event.id.source"),":"]})," ",jsx("span",{className:"text-foreground",children:nh(d.source)})]})]})]})]})}function lh({source:e}){return jsxs("span",{className:"inline-flex items-center gap-x-1 text-text-secondary",title:e==="polymarket"?"Polymarket":"Kalshi",children:[jsx("span",{className:"text-text-muted",children:"\xB7"}),e==="polymarket"?jsx(PolymarketIcon,{className:"h-5 w-auto shrink-0"}):jsx(KalshiIcon,{className:"h-3 w-auto shrink-0"})]})}var Yl="hsl(var(--heroui-content3) / 0.6)",fh="hsl(var(--heroui-content4) / 0.8)";function gh(e){return e==null?"-":formatAmountInUsd(e)}function bs({eventSlug:e,source:t,lang:r,limit:o=4,onEventClick:n,onEventHover:i}){let{t:s}=useTranslation(),{data:a,isLoading:l}=useSimilarEvents({slug:e,source:t,lang:r,limit:o});return l||!a||a.length===0?null:jsxs("div",{className:"flex flex-col gap-y-3 mt-6 px-1 lg:px-0",children:[jsx("div",{className:"-mx-1 px-1 py-1.5 lg:sticky lg:top-0 lg:z-10 lg:bg-surface-base",children:jsx("span",{style:{color:"var(--color-text-primary)",fontSize:14,fontWeight:600},children:s("predict.similar.title")})}),jsx("div",{className:"grid grid-cols-1 gap-2",children:a.map(p=>jsx(Ql,{event:p,onClick:n,onHover:i},`${p.source}-${p.slug}`))})]})}function Ql({event:e,onClick:t,onHover:r}){let{t:o}=useTranslation(),n=Kr(e),i=useMemo(()=>gh(e.volume),[e.volume]);return jsxs("button",{type:"button",onClick:()=>t?.(e),onMouseEnter:s=>{s.currentTarget.style.borderColor=fh,r?.(e);},onMouseLeave:s=>{s.currentTarget.style.borderColor=Yl;},style:{display:"flex",alignItems:"center",gap:10,padding:"10px 12px",borderRadius:14,border:`1px solid ${Yl}`,background:"hsl(var(--heroui-content2) / 0.4)",cursor:"pointer",textAlign:"left",width:"100%",transition:"border-color 0.2s"},className:"group",children:[jsx(Avatar,{src:e.image_url||void 0,name:n[0]||"?",radius:"full",className:"size-9 shrink-0 bg-transparent",imgProps:{className:"object-cover"}}),jsxs("div",{style:{display:"flex",flexDirection:"column",minWidth:0,flex:1,gap:2},children:[jsx("span",{style:{fontSize:13,fontWeight:500,color:"var(--color-text-primary)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:n}),jsxs("span",{style:{fontSize:10,color:"var(--color-text-secondary)"},children:[i," ",o("predict.event.volume")]})]}),jsx(ChevronRightIcon,{width:14,height:14,className:"shrink-0 opacity-0 group-hover:opacity-100 transition-opacity",style:{color:"var(--color-text-muted)"}})]})}var Un=100,yh=15e3,Wn=["yes","no"];function kh(e){return e.source??"polymarket"}function Sh(e){return {market_id:e.market_slug,outcome:e.outcome,bids:e.bids,asks:e.asks,spread:e.spread}}function Ph(e){let t=e.filter(r=>r.status==="open").map(r=>({slug:r.slug,source:kh(r)})).sort((r,o)=>r.slug.localeCompare(o.slug));return JSON.stringify(t)}function Nh(e){let t=e.filter(r=>r.status==="open").flatMap(r=>Wn.map(o=>({slug:r.slug,outcome:o}))).sort((r,o)=>{let n=r.slug.localeCompare(o.slug);return n!==0?n:r.outcome.localeCompare(o.outcome)});return JSON.stringify(t)}function Jl(e,t={}){let r=t.enabled??true,o=usePredictClient(),{wsClient:n}=usePredictWsClient(),i=useQueryClient(),s=useRef(new Set),a=useMemo(()=>r?Ph(e):"[]",[r,e]),l=useMemo(()=>JSON.parse(a),[a]),p=useMemo(()=>new Map(l.map(x=>[x.slug,x])),[l]),d=useMemo(()=>new Set(l.map(x=>x.slug)),[l]),c=useRef(d);c.current=d;let m=useRef(p);m.current=p;let u=useMemo(()=>r?Nh(e):"[]",[r,e]),f=useMemo(()=>JSON.parse(u),[u]),g=Bl(f),b=useCallback((x,y,v,k)=>{if(!k){_n(x,v);return}let P={...k,market_id:k.market_id||x,outcome:v};i.setQueryData(orderbookQueryKey(x,y,v),P),Fl(x,v,P);},[i]),h=useCallback(async(x,y)=>{try{let v=x.flatMap(P=>Wn.map(M=>({slug:P.slug,source:P.source,outcome:M}))),k=await o.getOrderbooks(v);if(y?.cancelled?.())return;for(let P of k){let M=P.outcome,N=Ze(P.slug,M);y?.markSeeded&&s.current.add(N),b(P.slug,P.source,M,P.orderbook);}}catch{if(!y?.markSeeded||y?.cancelled?.())return;for(let v of x)for(let k of Wn)s.current.add(Ze(v.slug,k));}},[b,o]);useEffect(()=>{if(!r){s.current.clear();return}let x=l.filter(v=>Wn.some(k=>!s.current.has(Ze(v.slug,k))));if(x.length===0)return;let y=false;return (async()=>{for(let v=0;v<x.length;v+=Un){if(y)return;await h(x.slice(v,v+Un),{cancelled:()=>y,markSeeded:true});}})(),()=>{y=true;}},[r,h,l]),useEffect(()=>{if(!r||l.length===0)return;let x=false,y=async()=>{for(let k=0;k<l.length;k+=Un){if(x)return;await h(l.slice(k,k+Un),{cancelled:()=>x});}},v=window.setInterval(()=>{y();},yh);return ()=>{x=true,window.clearInterval(v);}},[r,h,l]),useEffect(()=>{s.current.forEach(x=>{let[y,v]=x.split(":");d.has(y)||(s.current.delete(x),_n(y,v));});},[d]),useEffect(()=>{if(r&&n)return n.on("orderbook",x=>{let y=x.data.market_slug,v=x.data.outcome;if(v!=="yes"&&v!=="no"||!c.current.has(y))return;let k=m.current.get(y);k&&b(y,k.source,v,Sh(x.data));})},[b,r,n]);let S=useRef(new Set);return useEffect(()=>{if(!r){let k=S.current;n&&k.size>0&&n.unsubscribe(["orderbook"],Array.from(k)),S.current=new Set;return}if(!n)return;let x=S.current,y=[],v=[];d.forEach(k=>{x.has(k)||y.push(k);}),x.forEach(k=>{d.has(k)||v.push(k);}),y.length>0&&n.subscribe(["orderbook"],y),v.length>0&&n.unsubscribe(["orderbook"],v),S.current=new Set(d);},[r,d,n]),useEffect(()=>{if(n)return ()=>{let x=Array.from(S.current);x.length>0&&n.unsubscribe(["orderbook"],x),S.current=new Set;}},[n]),g}var Oh={enabled:false};function zn(e,t){return Jr(e.outcomes[0],t)??Number.NEGATIVE_INFINITY}function $n(e,t){if(!e.outcomes?.length)return e;let r=false,o=e.outcomes.map((n,i)=>{let s=i===0?"yes":"no",a=t.get(Ze(e.slug,s));if(!a)return n;let l=a.bestBid??n.best_bid,p=a.bestAsk??n.best_ask,d=a.bestAsk??n.price;return l===n.best_bid&&p===n.best_ask&&d===n.price?n:(r=true,{...n,best_bid:l,best_ask:p,price:d})});return r?{...e,outcomes:o}:e}function _h(e,t){if(!e.markets?.length||t.size===0)return e;let r=false,o=e.markets.map(n=>{let i=$n(n,t);return i!==n&&(r=true),i});return r?{...e,markets:o}:e}function Ih({eventSlug:e,source:t,chain:r,lang:o,walletAddress:n,onSimilarEventClick:i,onSimilarEventHover:s,onBack:a,renderActivitySection:l,onInsufficientBalance:p,onSetupRequired:d,slippageBps:c,marketDataCapability:m=Oh,marketDataEvent:u,marketDataOrderbooks:f,onMarketDataBookSelectionChange:g}){let{t:b}=useTranslation(),{isDesktop:h}=useScreen(),{onOpen:S}=useAsyncModal(qr),{onOpen:x}=useAsyncModal(En),{data:y,isLoading:v}=useEvent({slug:e,source:t,lang:o}),k=useMemo(()=>y&&Sn({capability:m,legacyEvent:y,marketDataEvent:u}),[y,m,u]),P=useMemo(()=>{let W=[...k?.markets||[]],te=W.filter(se=>se.status==="open").sort((se,he)=>zn(he,m.enabled)-zn(se,m.enabled)),ne=W.filter(se=>se.status!=="open").sort((se,he)=>zn(he,m.enabled)-zn(se,m.enabled));return [...te,...ne]},[k?.markets,m.enabled]),M=Jl(P,{enabled:!m.enabled}),N=useMemo(()=>k&&_h(k,M),[k,M]),w=useMemo(()=>M.size===0?P:P.map(W=>$n(W,M)),[P,M]),[R,A]=useState(null),X=useCallback((W,te,ne)=>{let se=w.find(Pe=>Pe.slug===W.slug)??$n(W,M),he=N??k;A(Pe=>({market:se,outcome:te,side:ne,version:(Pe?.version??0)+1})),!h&&he&&(ne==="sell"?x({params:{event:he,market:se,initialOutcome:te,chain:r,slippageBps:c,onSetupRequired:d}}):S({params:{event:he,market:se,initialOutcome:te,chain:r,slippageBps:c,onInsufficientBalance:p}}));},[h,k,N,w,M,r,c,S,x,p,d]),L=useMemo(()=>{let W=R?.market.slug;return W?w.find(te=>te.slug===W)??$n(R.market,M):w[0]},[w,M,R?.market]);if(v){let W=!!a;return h?jsxs("div",{className:"flex w-full max-w-6xl mx-auto gap-x-4 lg:gap-x-6",children:[jsx("div",{className:"min-w-0 flex-1 max-w-3xl",children:jsx(ro,{showBack:W})}),jsx("aside",{className:"hidden lg:block w-[340px] xl:w-[380px] shrink-0",children:jsx("div",{className:"sticky top-4 max-h-[calc(100dvh-2rem)] overflow-y-auto scrollbar-thin",children:jsx(cs,{})})})]}):jsx(ro,{showBack:W})}if(!y)return jsx("div",{className:"flex w-full items-center justify-center py-20 text-danger",children:b("predict.event.notFound")});let G=N??k??y,U=R?`${R.market.slug}-${R.version}`:L?.slug??"default",oe=R?.side==="sell";return jsxs("div",{className:"flex w-full flex-col gap-y-4 pb-12 lg:max-w-7xl lg:gap-y-8 lg:pb-16 mx-auto",children:[jsxs("div",{className:"flex w-full justify-center gap-4 pt-4 lg:gap-6",children:[jsxs("div",{className:"flex-auto min-w-0 flex flex-col gap-y-4 px-4 lg:gap-y-6 lg:px-0",children:[a&&jsx("div",{className:"flex items-center justify-between",children:jsx(Button,{as:"a",onPress:a,startContent:jsx(ChevronLeftIcon,{className:"h-4 w-4"}),className:"text-text-muted bg-transparent h-5 min-h-5 gap-x-2 p-0 text-base w-auto min-w-auto",children:b("common.back")})}),jsx(Ko,{event:G,marketDataEnabled:m.enabled,marketDataOrderbooks:f,onMarketDataBookSelectionChange:g,orderbookQuotes:M,onTradeAction:X})]}),jsxs("div",{className:"hidden flex-none w-md flex-col gap-y-4 lg:sticky lg:top-4 lg:flex lg:self-start",children:[L&&(oe?jsx(Io,{event:G,market:L,initialOutcome:R?.outcome,chain:r,slippageBps:c,onSetupRequired:d},U):jsx(Co,{event:G,market:L,initialOutcome:R?.outcome,chain:r,slippageBps:c,onInsufficientBalance:p},U)),y&&jsx(bs,{eventSlug:e,source:G.source,lang:o,onEventClick:i,onEventHover:s})]})]}),y&&jsx("div",{className:"flex w-full flex-col",children:l?l({event:G,walletAddress:n}):jsx(ss,{event:G,walletAddress:n})}),jsx(To,{}),jsx(ts,{}),jsx(Gi,{})]})}function Fh({eventSlug:e,source:t,lang:r,onTradeAction:o}){let{t:n}=useTranslation(),{data:i,isLoading:s,error:a}=useEvent({slug:e,source:t,lang:r});return s?jsx(ro,{}):a||!i?jsx("div",{className:"flex w-full items-center justify-center py-20 text-danger",children:a?.message||n("predict.event.notFound")}):jsx(Ko,{event:i,onTradeAction:o})}function ec(e){return e.outcomes[0]?.best_ask??e.outcomes[0]?.price??0}function zh(e){switch(e){case $.ONE_HOUR:return {interval:"1m",limit:100};case $.SIX_HOURS:return {interval:"5m",limit:72};case $.ONE_DAY:return {interval:"5m",limit:288};case $.ONE_MONTH:return {interval:"1h",limit:720};case $.ALL:return {interval:"1d",limit:300};default:return {interval:"1h",limit:100}}}var $h=e=>{let{candlestickMarketSlugs:t,chartRange:r=yo,source:o}=e,n=usePredictClient(),i=useMemo(()=>zh(r),[r]),{data:s,isLoading:a,error:l}=useEvent({slug:e.eventSlug,source:o}),p=useMemo(()=>{if(!s)return [];let f=new Set,g=In(s).filter(h=>f.has(h.slug)?false:(f.add(h.slug),true));return (t&&t.length>0?t.slice(0,4).map(h=>g.find(S=>S.slug===h)).filter(h=>h!==void 0):[...g].sort((h,S)=>ec(S)-ec(h)).slice(0,4)).map(h=>h.slug)},[t,s]),d=useQueries({queries:p.map(f=>({queryKey:candlesticksQueryKey(f,i),queryFn:()=>n.listCandlesticks(f,i),enabled:p.length>0}))}),c=d.some(f=>f.isLoading),m=useMemo(()=>{let f=new Map;return p.forEach((g,b)=>{let h=d[b]?.error;h&&f.set(g,h);}),f},[p,d]),u=useMemo(()=>{let f=new Map;return p.forEach((g,b)=>{let h=d[b]?.data;h&&f.set(g,h);}),f},[p,d]);return {event:s,isEventLoading:a,eventError:l,candlestickParams:i,candlesticks:u,isCandlesticksLoading:c,candlestickErrors:m}};function Gn({comment:e,anonymousLabel:t,isReply:r=false}){let{profile:o}=e,n=o.name||o.pseudonym||t,i=useMemo(()=>Gh(e.created_at),[e.created_at]);return jsxs("div",{className:cn$1("flex gap-x-2.5 px-1 py-3 border-b border-border/40 lg:px-2",r&&"pl-8 lg:pl-9"),children:[jsx(Kh,{src:o.profile_image,name:n,className:cn$1("shrink-0",r?"size-6":"size-8 lg:size-7")}),jsxs("div",{className:"min-w-0 flex-1",children:[jsxs("div",{className:"flex items-baseline gap-x-2",children:[jsx("span",{className:"truncate text-sm font-medium text-foreground",children:n}),jsx("span",{className:"ml-auto shrink-0 text-xs text-text-muted",children:i})]}),jsx("p",{className:"mt-1 whitespace-pre-wrap break-words text-sm leading-relaxed text-foreground/90",children:e.body}),jsxs("div",{className:"mt-2 flex items-center gap-x-1 text-text-muted",children:[jsx(Vh,{className:"size-3.5"}),jsx("span",{className:"text-xs tabular-nums",children:e.reaction_count})]})]})]})}function Kh({src:e,name:t,className:r}){let o=t.trim().charAt(0).toUpperCase()||"?",n=useMemo(()=>jh(t),[t]);return e?jsx("img",{src:e,alt:t,loading:"lazy",className:cn$1("rounded-full object-cover",r)}):jsx("span",{className:cn$1("flex items-center justify-center rounded-full text-xs font-semibold text-text-primary",r),style:{backgroundColor:n},"aria-hidden":true,children:o})}function Vh({className:e}){return jsx("svg",{viewBox:"0 0 24 24",className:e,fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":true,children:jsx("path",{d:"M19 14c1.49-1.46 3-3.21 3-5.5A5.5 5.5 0 0 0 16.5 3c-1.76 0-3 .5-4.5 2-1.5-1.5-2.74-2-4.5-2A5.5 5.5 0 0 0 2 8.5c0 2.3 1.5 4.05 3 5.5l7 7Z"})})}function jh(e){let t=0;for(let o=0;o<e.length;o++)t=e.charCodeAt(o)+((t<<5)-t);return `hsl(${Math.abs(t)%360}, 55%, 45%)`}function Gh(e){let t=new Date(e).getTime();if(Number.isNaN(t))return "";let r=Math.max(0,Math.floor((Date.now()-t)/1e3));if(r<60)return "now";let o=Math.floor(r/60);if(o<60)return `${o}m`;let n=Math.floor(o/60);if(n<24)return `${n}h`;let i=Math.floor(n/24);if(i<7)return `${i}d`;let s=Math.floor(i/7);return s<5?`${s}w`:new Date(t).toLocaleDateString(void 0,{month:"short",day:"numeric"})}var ov={latest:{order:"createdAt",ascending:false},oldest:{order:"createdAt",ascending:true},mostLiked:{order:"reactionCount",ascending:false}},oc={latest:"predict.comments.sortLatest",oldest:"predict.comments.sortOldest",mostLiked:"predict.comments.sortMostLiked"},nv=["latest","oldest","mostLiked"],iv=600,sv=112;function ac({slug:e,source:t,limit:r=20,height:o,className:n}){let{t:i}=useTranslation(),[s,a]=useState("latest"),[l,p]=useState(false),d=ov[s],{data:c,isLoading:m,isFetchingNextPage:u,hasNextPage:f,fetchNextPage:g}=useInfiniteComments({slug:e,source:t,limit:r,order:d.order,ascending:d.ascending,holders_only:l}),b=useMemo(()=>c?.pages?.flatMap(w=>w.items)??[],[c?.pages]),h=useRef(null),{height:S}=useResizeObserver({ref:h}),x=o??(S||iv),y=useDynamicRowHeight({defaultRowHeight:sv,key:`${e}:${t}:${s}:${l}`}),v=b.length,k=v+(f?1:0),P=useCallback(w=>w<v,[v]),M=useCallback(async()=>{f&&!u&&await g();},[f,u,g]),N=useInfiniteLoader({isRowLoaded:P,loadMoreRows:M,rowCount:k,threshold:5});return jsxs("div",{className:cn$1("flex h-full w-full flex-col",n),children:[jsx(lv,{sort:s,onSortChange:a,holdersOnly:l,onHoldersOnlyChange:p}),jsx("div",{className:"min-h-0 flex-auto overflow-hidden",ref:h,children:m?jsx(cv,{}):b.length===0?jsx(dv,{message:i("predict.comments.empty")}):jsx(List,{className:"no-scrollbar",style:{height:x},onRowsRendered:N,rowComponent:av,rowCount:k,rowHeight:y,rowProps:{comments:b,itemCount:v,anonymousLabel:i("predict.comments.anonymous")},overscanCount:4})})]})}function av({index:e,style:t,comments:r,itemCount:o,anonymousLabel:n}){if(e>=o)return jsx("div",{style:t,className:"flex items-center justify-center py-4",children:jsx(Spinner,{size:"sm"})});let i=r[e];return i?jsx("div",{style:t,children:jsx(Gn,{comment:i,anonymousLabel:n,isReply:!!i.parent_comment_id})}):null}function lv({sort:e,onSortChange:t,holdersOnly:r,onHoldersOnlyChange:o}){let{t:n}=useTranslation(),[i,s]=useState(false),a=useRef(null);return useEffect(()=>{if(!i)return;let l=d=>{a.current&&!a.current.contains(d.target)&&s(false);},p=d=>{d.key==="Escape"&&s(false);};return document.addEventListener("mousedown",l),document.addEventListener("keydown",p),()=>{document.removeEventListener("mousedown",l),document.removeEventListener("keydown",p);}},[i]),jsxs("div",{className:"flex items-center justify-between gap-2 px-1 py-2 lg:px-2",children:[jsxs("div",{ref:a,className:"relative",children:[jsxs("button",{type:"button",onClick:()=>s(l=>!l),className:"inline-flex items-center gap-x-1.5 rounded-lg border border-border bg-content2/40 px-3 py-1.5 text-sm text-foreground transition-colors hover:bg-content2 cursor-pointer",children:[jsx(uv,{className:"size-3.5 text-text-muted"}),jsx("span",{children:n(oc[e])}),jsx(pv,{className:cn$1("size-3.5 text-text-muted transition-transform",i&&"rotate-180")})]}),i&&jsx("div",{className:"absolute left-0 top-full z-20 mt-1.5 min-w-40 overflow-hidden rounded-xl border border-border bg-content1 p-1 shadow-xl",children:nv.map(l=>{let p=l===e;return jsxs("button",{type:"button",onClick:()=>{t(l),s(false);},className:cn$1("flex w-full items-center gap-x-2 rounded-lg px-3 py-2 text-left text-sm transition-colors cursor-pointer",p?"bg-primary/10 text-primary":"text-text-muted hover:bg-content2 hover:text-foreground"),children:[jsx("span",{className:"flex-1 font-medium",children:n(oc[l])}),p&&jsx(nc,{className:"size-4 text-primary"})]},l)})})]}),jsxs("button",{type:"button",role:"switch","aria-checked":r,onClick:()=>o(!r),className:cn$1("inline-flex items-center gap-x-1.5 rounded-lg border px-3 py-1.5 text-sm transition-colors cursor-pointer",r?"border-primary/40 bg-primary/10 text-primary":"border-border bg-content2/40 text-text-muted hover:text-foreground"),children:[jsx("span",{className:cn$1("flex size-4 items-center justify-center rounded border",r?"border-primary bg-primary":"border-border-control"),children:r&&jsx(nc,{className:"size-3 text-background"})}),n("predict.comments.holdersOnly")]})]})}function cv(){return jsx("div",{className:"flex flex-col gap-y-4 px-1 py-3 lg:px-2",children:Array.from({length:6}).map((e,t)=>jsxs("div",{className:"flex gap-x-2.5",children:[jsx(Skeleton,{className:"size-8 shrink-0 rounded-full"}),jsxs("div",{className:"flex-1 space-y-2",children:[jsx(Skeleton,{className:"h-3 w-24 rounded"}),jsx(Skeleton,{className:"h-3 w-full rounded"}),jsx(Skeleton,{className:"h-3 w-2/3 rounded"})]})]},t))})}function dv({message:e}){return jsxs("div",{className:"flex flex-col items-center justify-center py-16",children:[jsx(EmptyIcon,{width:28,height:28,className:"text-text-muted"}),jsx("p",{className:"mt-2 text-sm text-text-muted",children:e})]})}function uv({className:e}){return jsxs("svg",{viewBox:"0 0 24 24",className:e,fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":true,children:[jsx("path",{d:"m21 16-4 4-4-4"}),jsx("path",{d:"M17 20V4"}),jsx("path",{d:"m3 8 4-4 4 4"}),jsx("path",{d:"M7 4v16"})]})}function pv({className:e}){return jsx("svg",{viewBox:"0 0 24 24",className:e,fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":true,children:jsx("path",{d:"m6 9 6 6 6-6"})})}function nc({className:e}){return jsx("svg",{viewBox:"0 0 24 24",className:e,fill:"none",stroke:"currentColor",strokeWidth:"3",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":true,children:jsx("path",{d:"M20 6 9 17l-5-5"})})}var mv=["signing","submitting","confirming","succeeded"];function fv(e){return {status:e,canSubmit:!mv.includes(e),canCancel:e!=="succeeded"&&e!=="submitting"&&e!=="confirming"}}var yv=10,cc="liberfi:predict_search_histories";function uo(){return createBrowserSearchHistoryStorage({key:cc,fallback:createMemorySearchHistoryStorage()})}function kv(e,t){return e.length===t.length&&e.every((r,o)=>r===t[o])}function Ss(){let e=useMemo(()=>uo(),[]),t=useRef(e.read()),r=()=>{let s=e.read();return kv(t.current,s)?t.current:(t.current=s,s)},o=useSyncExternalStore(e.subscribe,r,r),n=useCallback(s=>{let a=s.trim();if(!a)return;let l=e.read().filter(p=>p!==a);e.write([a,...l].slice(0,yv));},[e]),i=useCallback(()=>{e.clear();},[e]);return {histories:o,addHistory:n,clearHistories:i}}function Ps({histories:e,onSelect:t,onClear:r,className:o}){let{t:n}=useTranslation();return e.length===0?null:jsxs("div",{className:cn$1("px-4 pb-4",o),children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("span",{className:"text-sm font-medium",children:n("predict.search.history")}),jsx(Button,{isIconOnly:true,size:"sm",className:"bg-transparent min-w-6 w-6 h-6 text-text-muted",onPress:r,children:jsx(TrashIcon,{width:20,height:20})})]}),jsx("div",{className:"flex flex-wrap gap-2 mt-2",children:e.map(i=>jsx(Chip,{size:"sm",variant:"bordered",className:cn$1("text-text-muted","border-border border-1","cursor-pointer","hover:opacity-hover"),onClick:()=>t?.(i),children:jsx("span",{children:i})},i))})]})}function Ns({onSelect:e,histories:t,onClear:r,className:o}){let n=Ss(),i=t?[...t]:n.histories,s=r??n.clearHistories;return jsx(Ps,{className:cn$1(o),histories:i,onSelect:e,onClear:s})}var Iv=["ArrowDown","ArrowUp","Enter","Escape"];function Dv(e){return Iv.includes(e)}function Ms({value:e,onValueChange:t,onClear:r,onEscape:o,onNavigateKey:n,className:i}){let{t:s}=useTranslation();return jsx("div",{className:i,children:jsx(StyledInput,{autoFocus:true,variant:"bordered",radius:"lg",value:e,onValueChange:t,onKeyDown:a=>{Dv(a.key)&&(a.key!=="Escape"&&a.preventDefault(),n?.(a.key));},placeholder:s("predict.search.placeholder"),classNames:{inputWrapper:["!bg-surface-strong/60","!border-border-control/50","data-[hover=true]:!bg-surface-strong","group-data-[focus=true]:!bg-surface-strong","group-data-[focus=true]:!border-border-control/80"].join(" ")},startContent:jsx(SearchIcon,{width:20,height:20,className:"text-text-muted"}),endContent:e?jsx(Button,{isIconOnly:true,className:"bg-transparent min-w-6 w-6 h-6 text-text-muted",onPress:r,children:jsx(XCloseIcon,{width:20,height:20})}):jsx(Kbd,{className:"min-w-8 justify-center text-xs text-text-muted bg-transparent border border-border-control/50 rounded-lg cursor-pointer select-none",onMouseDown:a=>{a.preventDefault(),o?.();},children:"ESC"})})})}function Wv(e){switch(e.result_type){case "match_group":return "predict.search.type.match";case "prop_event":return "predict.search.type.prop";case "market":return "predict.search.type.market";default:return "predict.search.type.event"}}function zv({actionRef:e,...t}){return jsx("div",{ref:e,...t})}function Es({result:e,href:t,LinkComponent:r,onSelect:o,onHover:n,highlighted:i=false,actionRef:s,className:a}){let{t:l}=useTranslation(),p=e.title,d=useMemo(()=>[l(Wv(e)),e.section,e.status].filter(Boolean).join(" \xB7 "),[e,l]),c=useMemo(()=>{function u({...f}){return jsx(r??"a",{ref:s,...f})}return u},[r,s]),m=useMemo(()=>{function u(f){return jsx(zv,{...f,actionRef:s})}return u},[s]);return jsxs(Linkable,{href:t,LinkComponent:c,as:m,className:cn$1("group w-full h-full px-3 flex items-center gap-3","hover:cursor-pointer hover:bg-content2 rounded-lg","transition-colors duration-150",i&&"bg-content2",a),"data-highlighted":i?"true":"false","aria-selected":i,onClick:u=>{t&&o&&u.preventDefault(),o?.(e);},onMouseEnter:()=>n?.(e),children:[jsx(Avatar,{src:void 0,name:p||l("predict.event.fallbackName"),radius:"full",className:"h-10 w-10 flex-shrink-0"}),jsxs("div",{className:"flex-1 min-w-0 flex flex-col justify-center gap-y-0.5",children:[jsx("span",{className:"min-w-0 text-sm font-medium line-clamp-2 group-hover:text-primary transition-colors",children:p}),jsx("div",{className:"flex items-center gap-x-2 text-[10px] font-normal text-text-muted lg:text-xs",children:jsx("span",{className:"text-text-secondary",children:d||l("predict.search.title")})})]}),jsx(ChevronRightIcon,{width:16,height:16,className:"shrink-0 text-text-muted opacity-0 group-hover:opacity-100 transition-opacity"})]})}function Cs({keyword:e="",limit:t,source:r}){let{data:o,isLoading:n,isFetchingNextPage:i,hasNextPage:s,fetchNextPage:a}=useInfinitePredictSearch({q:e,limit:t,source:r,sort_by:e?void 0:"volume",sort_asc:e?void 0:false},{enabled:true}),l=useMemo(()=>o?.pages.flatMap(p=>p.items).filter(p=>p!=null)??[],[o]);return {results:l,items:l,isLoading:n,isFetchingNextPage:i,hasNextPage:s??false,fetchNextPage:a}}var Zv=64;function Rs({onSelect:e,getEventHref:t,LinkComponent:r,onHover:o,className:n,navigationRef:i,onEscape:s,...a}){let{results:l,isLoading:p,isFetchingNextPage:d,hasNextPage:c,fetchNextPage:m}=Cs(a),u=useRef(null),{height:f}=useResizeObserver({ref:u}),g=useRef(null),[b,h]=useState(null),S=useRef(null);S.current=b;let x=a.keyword??"",y=x==="",v=y||p?0:l.length,k=useCallback(L=>L<l.length,[l]),P=useCallback(async()=>{c&&!d&&await m();},[c,d,m]),M=useMemo(()=>c?l.length+1:l.length,[l,c]),N=useInfiniteLoader({isRowLoaded:k,loadMoreRows:P,rowCount:M,threshold:5}),w=useCallback(()=>{S.current=null,h(null);},[]),R=useCallback(L=>{if(L<0||L>=l.length){w();return}S.current=L,h(L),g.current?.scrollToRow({index:L,align:"smart",behavior:"auto"});},[w,g,l.length]),A=useSearchKeyboardNavigation({itemCount:v,hasNextPage:c&&!y&&!p,isFetchingNextPage:d,onSelectIndex:L=>{R(L);},onRequestNextPage:()=>{c&&!d&&m();},onEscape:()=>s?.()});i&&(i.current=A),useEffect(()=>()=>{i&&i.current===A&&(i.current=null);},[A,i]),useEffect(()=>(A.reset(),w(),()=>{w();}),[x,A,w]);let X=useCallback(L=>S.current!==L?false:(S.current=null,h(null),true),[]);return p?jsx(tx,{className:n}):l.length===0?jsx(rx,{className:n}):jsx("div",{className:cn$1("w-full h-full flex flex-col",n),children:jsx("div",{className:"flex-auto min-h-0",ref:u,children:jsx(List,{className:"no-scrollbar",style:{height:f},listRef:g,onRowsRendered:N,rowComponent:ex,rowCount:M,rowHeight:Zv,rowProps:{results:l,onSelect:e,getEventHref:t,LinkComponent:r,onHover:o,highlightedIndex:y?null:A.highlightedIndex,pendingIndex:y?null:b,consumePending:X},overscanCount:5})})})}function ex({index:e,style:t,results:r,onSelect:o,getEventHref:n,LinkComponent:i,onHover:s,highlightedIndex:a,pendingIndex:l,consumePending:p}){let d=r[e],c=useRef(null);return useLayoutEffect(()=>{l===e&&p(e)&&c.current?.click();},[p,e,l]),d?jsx("div",{style:t,"data-index":e,children:jsx(Es,{result:d,href:n?.(d)??d.detail_url,LinkComponent:i,onSelect:o,onHover:s,highlighted:a===e,actionRef:c})}):jsx("div",{style:t,className:"flex items-center justify-center",children:jsx(Spinner,{size:"sm"})})}function tx({className:e}){let{t}=useTranslation();return jsxs("div",{className:cn$1("flex items-center justify-center gap-2 py-16",e),children:[jsx(Spinner,{size:"sm"}),jsx("span",{className:"text-sm text-text-muted",children:t("predict.search.loading")})]})}function rx({className:e}){let{t}=useTranslation();return jsxs("div",{className:cn$1("flex flex-col items-center justify-center py-16",e),children:[jsx(EmptyIcon,{width:28,height:28,className:"text-text-muted"}),jsx("p",{className:"mt-2 text-sm text-text-muted",children:t("predict.search.noResults")})]})}var vc=()=>{};function Os({onKeywordChange:e,onSelectResult:t,getEventHref:r,LinkComponent:o,onHover:n,onEscape:i,source:s}){let a=useMemo(()=>uo(),[]),l=useSearchController({storage:a,onQueryChange:e??vc,onDismiss:i??vc}),p=useRef(null),d=l.dismiss,c=useCallback(m=>{if(p.current){p.current.onKey(m);return}m==="Escape"&&d();},[d]);return jsxs("div",{className:"w-full h-full flex flex-col gap-3",children:[jsx(Ms,{value:l.text,onValueChange:l.setText,onClear:l.clearQuery,onEscape:l.dismiss,onNavigateKey:c}),!l.query&&jsx(Ns,{histories:l.history,onSelect:l.commitQuery,onClear:l.clearHistory}),jsx(Rs,{className:"flex-auto min-h-0",keyword:l.query,onSelect:t,getEventHref:r,LinkComponent:o,onHover:n,source:s,navigationRef:p,onEscape:l.dismiss})]})}var Qn="predict-search";function vx({id:e=Qn}){return jsx(AsyncModal,{id:e,children:t=>jsx(xx,{...t})})}function xx({params:e,isOpen:t,onOpenChange:r,onResult:o}){let{t:n}=useTranslation(),{isMobile:i}=useScreen(),s=useCallback(l=>{o(l);},[o]),a=useCallback(()=>{r(false);},[r]);return jsx(StyledModal,{isOpen:t,onOpenChange:r,size:i?"full":"lg",hideCloseButton:true,backdrop:"opaque",radius:"lg",children:jsxs(ModalContent,{className:"w-full h-full",style:{borderRadius:i?void 0:14,border:i?void 0:"1px solid var(--color-border-control)",background:"var(--color-surface-interactive)",boxShadow:i?void 0:"0 25px 50px -12px rgba(0,0,0,0.5)",overflow:"hidden"},children:[jsxs(ModalHeader,{className:"sm:hidden flex items-center justify-between pt-4 pb-2",children:[jsx("span",{className:"text-base font-semibold",children:n("predict.search.title")}),jsx(Button,{isIconOnly:true,onPress:()=>r(false),size:"sm",className:"bg-transparent min-w-6 w-6 h-6",children:jsx(XCloseIcon,{width:20,height:20})})]}),jsx(ModalBody,{className:"p-4",children:jsx(Os,{getEventHref:e?.getEventHref,LinkComponent:e?.LinkComponent,onHover:e?.onHover,source:e?.source,onSelectResult:s,onEscape:a})})]})})}function Nx({onSelectEvent:e,modalParams:t,className:r}){let{t:o}=useTranslation(),{isDesktop:n}=useScreen(),{onOpen:i,onClose:s}=useAsyncModal(Qn),a=useCallbackRef(e),l=useCallbackRef(async()=>{let d=await i({params:t});d&&a(d);}),p=useCallbackRef(()=>{s();});return useEffect(()=>{let d=c=>{let m=document.activeElement,u=!!m&&(m.tagName==="INPUT"||m.tagName==="TEXTAREA"||m.getAttribute("contenteditable")==="true");c.key==="/"&&!u&&(c.preventDefault(),l()),c.key==="Escape"&&(c.preventDefault(),p());};return window.addEventListener("keydown",d),()=>{window.removeEventListener("keydown",d);}},[l,p]),n?jsx(Button,{size:"sm",radius:"full",onPress:l,variant:"bordered",startContent:jsx(SearchIcon,{width:16,height:16,className:"text-foreground"}),endContent:jsx(Kbd,{className:"min-w-6 justify-center text-xs text-foreground bg-content3 rounded-lg",children:"/"}),className:cn$1("w-56 min-w-0 h-8 min-h-0 border-transparent hover:border-border bg-content2 pl-3 pr-1.5 text-text-muted",r),children:o("predict.search.placeholder")}):jsx(Button,{size:"sm",radius:"full",isIconOnly:true,onPress:l,variant:"bordered",className:cn$1("w-8 min-w-0 h-8 min-h-0 border-1 border-border bg-content2",r),children:jsx(SearchIcon,{width:16,height:16,className:"text-foreground"})})}var Pc=()=>{};function Ex({onKeywordChange:e}){let t=useMemo(()=>uo(),[]),r=useSearchController({storage:t,onQueryChange:e??Pc,onDismiss:Pc});return {text:r.text,keyword:r.query,setText:r.setText,setKeyword:r.commitQuery,clearKeyword:r.clearQuery}}var Is=[{value:"spread",labelKey:"predict.matches.sort.spread",descKey:"predict.matches.sort.spreadDesc",icon:"trending-up"},{value:"volume",labelKey:"predict.matches.sort.volume",descKey:"predict.matches.sort.volumeDesc",icon:"chart-column"},{value:"confidence",labelKey:"predict.matches.sort.confidence",descKey:"predict.matches.sort.confidenceDesc",icon:"flame"}],Tc=[{labelKey:"predict.matches.filter.noMinimum",label:"$0",value:0},{labelKey:null,label:"$100+",value:100},{labelKey:null,label:"$500+",value:500},{labelKey:null,label:"$1K+",value:1e3},{labelKey:null,label:"$5K+",value:5e3},{labelKey:null,label:"$10K+",value:1e4},{labelKey:null,label:"$50K+",value:5e4},{labelKey:null,label:"$100K+",value:1e5}],wc={display:"inline-flex",alignItems:"center",gap:8,borderRadius:10,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content3) / 0.6)",padding:"8px 12px",fontSize:14,color:"var(--color-text-primary)",cursor:"pointer",transition:"all 0.15s"},Ec={position:"absolute",right:0,top:"100%",zIndex:20,marginTop:8,borderRadius:14,border:"1px solid var(--color-border-control)",background:"var(--color-surface-interactive)",boxShadow:"0 25px 50px -12px rgba(0,0,0,0.5)",overflow:"hidden"};function Rx(e,t){if(!e)return "$5K+";let r=Tc.find(o=>o.value===e);return r?r.labelKey?t(r.labelKey):r.label:`$${e}`}function Ds({sortBy:e,onSortChange:t,sortAsc:r,onSortAscChange:o,minVolume:n,onMinVolumeChange:i,onRefresh:s}){let{t:a}=useTranslation(),[l,p]=useState(false),[d,c]=useState(false),[m,u]=useState(false),[f,g]=useState(false),b=useRef(null),h=useRef(null),S=Is.find(v=>v.value===e)??Is[0],x=useCallback(v=>{b.current&&!b.current.contains(v.target)&&p(false),h.current&&!h.current.contains(v.target)&&c(false);},[]);useEffect(()=>(document.addEventListener("mousedown",x),()=>document.removeEventListener("mousedown",x)),[x]);let y=useCallback(()=>{s?.(),g(true),setTimeout(()=>g(false),700);},[s]);return jsxs(Fragment,{children:[jsx("style",{children:`
79
79
  @keyframes matchRefreshSpin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
80
80
  .match-refresh-spin{animation:matchRefreshSpin .6s ease-in-out}
81
81
  .match-btn:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;z-index:10}
@@ -133,5 +133,5 @@ import {createContext,memo,useRef,forwardRef,useState,useImperativeHandle,useMem
133
133
  .match-fade-in-d1{animation:matchFadeIn .5s ease-out .1s both}
134
134
  .match-fade-in-d2{animation:matchFadeIn .5s ease-out .2s both}
135
135
  `}),jsxs("div",{style:{position:"relative",overflow:"hidden",borderBottom:"1px solid var(--color-border-subtle)"},children:[jsxs("div",{style:{position:"absolute",inset:0,pointerEvents:"none",zIndex:0,overflow:"hidden"},children:[l&&jsx("img",{src:l,alt:"","aria-hidden":"true",style:{position:"absolute",inset:0,width:"100%",height:"100%",objectFit:"cover",objectPosition:"center center",opacity:.3,mixBlendMode:"lighten",maskImage:"linear-gradient(to bottom, black 50%, transparent 100%)",WebkitMaskImage:"linear-gradient(to bottom, black 50%, transparent 100%)"}}),jsx("div",{style:{position:"absolute",inset:0,opacity:.025,backgroundImage:"radial-gradient(circle at 1px 1px, rgb(255 255 255) 1px, transparent 0)",backgroundSize:"20px 20px"}})]}),jsx("style",{children:".matches-hero-wrap{padding:40px 16px 32px}@media(min-width:640px){.matches-hero-wrap{padding:48px 24px 40px}}@media(min-width:1024px){.matches-hero-wrap{padding:52px 32px 44px}}"}),jsx("div",{className:"match-fade-in matches-hero-wrap",style:{position:"relative",zIndex:2,maxWidth:1152,margin:"0 auto"},children:jsx(As,{stats:b})})]}),jsxs("div",{style:{position:"sticky",top:0,zIndex:40,background:"rgba(10,10,11,0.8)",backdropFilter:"blur(24px)",WebkitBackdropFilter:"blur(24px)",borderBottom:"1px solid var(--color-border-subtle)"},children:[jsx("style",{children:".matches-toolbar-inner{padding:12px 16px}@media(min-width:640px){.matches-toolbar-inner{padding:12px 24px}}@media(min-width:1024px){.matches-toolbar-inner{padding:12px 32px}}"}),jsxs("div",{className:"matches-toolbar-inner",style:{maxWidth:1152,margin:"0 auto",display:"flex",alignItems:"center",justifyContent:"space-between",gap:12},children:[jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,minWidth:0},children:[jsx("div",{className:"hidden sm:flex",style:{alignItems:"center",justifyContent:"center",width:32,height:32,borderRadius:10,background:"linear-gradient(to bottom right, rgba(199,255,46,0.15), rgba(23,201,100,0.15))",border:"1px solid rgba(199,255,46,0.15)",flexShrink:0},children:jsxs("svg",{viewBox:"0 0 24 24",style:{width:16,height:16,color:"#c7ff2e"},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[jsx("path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z"}),jsx("path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12"}),jsx("path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17"})]})}),jsxs("div",{style:{minWidth:0},children:[jsx("h2",{style:{fontSize:14,fontWeight:600,color:"#fff",margin:0,letterSpacing:"-0.28px",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:p(kb[d])}),b&&b.activePairs>0&&jsx("p",{className:"hidden sm:block",style:{fontSize:11,color:"var(--color-text-muted)",margin:0},children:p("predict.matches.pairsFound",{count:b.activePairs})})]})]}),jsx(Ds,{sortBy:d,onSortChange:x,sortAsc:m,onSortAscChange:y,minVolume:f,onMinVolumeChange:g,onRefresh:k})]})]}),jsx("style",{children:".matches-content-wrap{padding:24px 16px 80px}@media(min-width:640px){.matches-content-wrap{padding:32px 24px 80px}}@media(min-width:1024px){.matches-content-wrap{padding:24px 32px 80px}}"}),jsxs("div",{className:"match-fade-in-d2 matches-content-wrap",style:{position:"relative",maxWidth:1152,margin:"0 auto"},children:[jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:16,padding:"8px 12px",borderRadius:8,border:"1px solid var(--color-border-subtle)",background:"rgba(24,24,27,0.25)"},children:[jsx("svg",{viewBox:"0 0 24 24",style:{width:14,height:14,color:"var(--color-text-disabled)",flexShrink:0},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsx("path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"})}),jsxs("p",{style:{fontSize:11,color:"var(--color-text-disabled)",lineHeight:1.5,margin:0},children:[jsx("span",{style:{color:"var(--color-text-muted)",fontWeight:500},children:p("predict.matches.experimentalFeature")})," \u2014 ",p("predict.matches.disclaimer")]})]}),jsx(Us,{ref:S,sortBy:d,sortAsc:m,minVolume:f,onSelectMatch:e,getMatchHref:t,onSelectLeg:r,getLegHref:o,onHover:n,onSelect:i,getMarketHref:s,LinkComponent:a,onStatsChange:v})]}),jsx(Pb,{stats:b})]})}function Ws(e){return e==null?"-":formatAmountInUsd(e)}var Eb={polymarket:{text:"#50a2ff",border:"rgba(43,127,255,0.15)",hoverBorder:"rgba(43,127,255,0.3)",bg:"rgba(43,127,255,0.05)",priceColor:"rgba(244,244,245,1)",priceActiveColor:"rgba(244,244,245,1)"},kalshi:{text:"#00d492",border:"rgba(0,212,146,0.15)",hoverBorder:"rgba(0,212,146,0.3)",bg:"rgba(0,212,146,0.05)",priceColor:"#00d492",priceActiveColor:"#00d492"}},Cb={text:"var(--color-text-secondary)",border:"rgba(156,163,175,0.15)",hoverBorder:"rgba(156,163,175,0.3)",bg:"rgba(156,163,175,0.05)",priceColor:"rgba(244,244,245,1)",priceActiveColor:"rgba(244,244,245,1)"};function Tb(e){return Eb[e]??Cb}function Rb(e){if(!e.matched_markets?.length)return null;let t=null,r=-1;for(let o of e.matched_markets){let n=o.spread??0;n>r&&(r=n,t=o);}return t}function Lb(e,t){let r=e.entries.find(a=>a.source===(t?.source_a??e.entries[0]?.source)),o=e.entries.find(a=>a.source===(t?.source_b??e.entries[1]?.source)),n=a=>{if(!a?.outcomes?.[0])return {name:null,price:null};let l=a.outcomes[0];return {name:l.label||null,price:l.best_ask??l.price??null}},i=n(t?.market_a),s=n(t?.market_b);return [{source:t?.source_a??r?.source??"unknown",outcomeName:i.name,yesPrice:i.price,volume:r?.event?.volume??null,event:r?.event},{source:t?.source_b??o?.source??"unknown",outcomeName:s.name,yesPrice:s.price,volume:o?.event?.volume??null,event:o?.event}]}function Ob({group:e,onSelectEntry:t,getEventHref:r,LinkComponent:o}){let{t:n}=useTranslation(),i=useMemo(()=>Rb(e),[e]),s=e.max_spread!=null?e.max_spread*100:null,[a,l]=useMemo(()=>Lb(e,i),[e,i]),p=s!=null&&s>=3,d=a.yesPrice!=null&&l.yesPrice!=null?a.yesPrice<=l.yesPrice?a:l:null,c=d?Or(d.source):null,m=p?"amber":"violet";return jsxs("div",{className:"group",style:{borderRadius:16,border:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content2) / 0.4)",overflow:"hidden",transition:"all 0.2s",position:"relative"},onMouseEnter:u=>{let f=u.currentTarget;f.style.borderColor="hsl(var(--heroui-content4) / 0.6)",f.style.boxShadow="0 10px 15px -3px rgba(0,0,0,0.2)";},onMouseLeave:u=>{let f=u.currentTarget;f.style.borderColor="hsl(var(--heroui-content3) / 0.6)",f.style.boxShadow="none";},children:[s!=null&&jsxs("span",{style:{position:"absolute",top:12,right:12,zIndex:10,display:"inline-flex",alignItems:"center",gap:4,borderRadius:10,padding:"4px 10px",fontSize:12,fontWeight:600,border:`1px solid ${p?"rgba(255,185,0,0.3)":s>=2?"rgba(166,132,255,0.3)":"rgba(156,163,175,0.3)"}`,background:p?"rgba(255,185,0,0.15)":s>=2?"rgba(166,132,255,0.15)":"rgba(156,163,175,0.12)",color:p?"#ffb900":s>=2?"#a684ff":"var(--color-text-secondary)"},children:[jsx("svg",{viewBox:"0 0 24 24",style:{width:12,height:12},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsx("path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"})}),s.toFixed(1),"%"]}),jsxs("div",{style:{padding:16},children:[jsx("h3",{style:{fontSize:14,fontWeight:600,lineHeight:1.375,letterSpacing:"-0.28px",color:"var(--color-text-primary)",overflow:"hidden",textOverflow:"ellipsis",display:"-webkit-box",WebkitLineClamp:2,WebkitBoxOrient:"vertical",paddingRight:80,margin:"0 0 16px"},children:e.title}),jsxs("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:12},children:[jsx($c,{data:a,isCheaper:d===a,onSelect:t,getEventHref:r,LinkComponent:o}),jsx($c,{data:l,isCheaper:d===l,onSelect:t,getEventHref:r,LinkComponent:o})]}),d&&c&&s!=null&&jsxs("div",{style:{marginTop:12,padding:"8px 12px",borderRadius:10,display:"flex",alignItems:"center",gap:8,cursor:"pointer",transition:"all 0.15s",border:`1px solid ${m==="amber"?"rgba(255,185,0,0.15)":"rgba(166,132,255,0.15)"}`,background:m==="amber"?"rgba(255,185,0,0.05)":"rgba(166,132,255,0.05)"},onClick:()=>d.event&&t?.(d.event),children:[jsx("svg",{viewBox:"0 0 24 24",style:{width:14,height:14,flexShrink:0,color:m==="amber"?"#ffb900":"#a684ff"},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsx("path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"})}),jsx("span",{style:{fontSize:11,fontWeight:500,color:m==="amber"?"rgba(255,185,0,0.9)":"rgba(166,132,255,0.9)"},children:n("predict.matches.buyEdge",{platform:d.source.charAt(0).toUpperCase()+d.source.slice(1),spread:s.toFixed(1)})}),jsxs("svg",{viewBox:"0 0 24 24",style:{width:12,height:12,marginLeft:"auto",color:m==="amber"?"rgba(255,185,0,0.5)":"rgba(166,132,255,0.5)"},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[jsx("path",{d:"M5 12h14"}),jsx("path",{d:"m12 5 7 7-7 7"})]})]})]}),jsxs("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",borderTop:"1px solid var(--color-border-subtle)",background:"hsl(var(--heroui-content3) / 0.2)",padding:"10px 16px"},children:[jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,fontSize:10,color:"var(--color-text-muted)"},children:[jsxs("span",{style:{display:"flex",alignItems:"center",gap:4},children:[jsxs("svg",{viewBox:"0 0 24 24",style:{width:12,height:12},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[jsx("path",{d:"M3 3v16a2 2 0 0 0 2 2h16"}),jsx("path",{d:"M18 17V9"}),jsx("path",{d:"M13 17V5"}),jsx("path",{d:"M8 17v-3"})]}),Ws(e.combined_volume)]}),e.combined_volume_24h!=null&&e.combined_volume_24h>0&&jsxs("span",{style:{display:"flex",alignItems:"center",gap:4},children:[jsx("svg",{viewBox:"0 0 24 24",style:{width:12,height:12},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsx("path",{d:"M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z"})}),Ws(e.combined_volume_24h)," ",n("predict.matches.vol24h")]})]}),e.confidence!=null&&jsxs("span",{style:{display:"flex",alignItems:"center",gap:4,fontSize:10,color:"var(--color-text-disabled)"},children:[jsx("svg",{viewBox:"0 0 24 24",style:{width:12,height:12},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:jsx("path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"})}),Math.round(e.confidence*100),"%"," ",n("predict.matches.match")]})]})]})}function $c({data:e,isCheaper:t,onSelect:r,getEventHref:o,LinkComponent:n}){let{t:i}=useTranslation(),s=Or(e.source),a=Tb(e.source),l=e.event?o?.(e.event):void 0,p=jsxs("div",{style:{borderRadius:14,border:`1px solid ${a.border}`,background:a.bg,padding:12,cursor:l||r?"pointer":void 0,transition:"border-color 0.15s"},onMouseEnter:d=>{d.currentTarget.style.borderColor=a.hoverBorder;},onMouseLeave:d=>{d.currentTarget.style.borderColor=a.border;},onClick:()=>e.event&&r?.(e.event),children:[jsxs("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:8},children:[s.icon,jsx("span",{style:{fontSize:10,fontWeight:600,letterSpacing:"0.05em",color:a.text,textTransform:"uppercase"},children:s.label}),jsxs("svg",{viewBox:"0 0 24 24",className:"opacity-0 group-hover:opacity-100 transition-opacity",style:{width:10,height:10,color:"var(--color-text-disabled)",marginLeft:"auto"},fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[jsx("path",{d:"M7 7h10v10"}),jsx("path",{d:"M7 17 17 7"})]})]}),e.outcomeName&&jsx("div",{style:{fontSize:10,color:"var(--color-text-muted)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap",marginBottom:8},children:e.outcomeName}),jsxs("div",{style:{display:"flex",alignItems:"baseline",gap:6},children:[jsx("span",{style:{fontSize:20,fontWeight:700,fontVariantNumeric:"tabular-nums",color:t?a.priceActiveColor:a.priceColor},children:e.yesPrice!=null?(e.yesPrice*100).toFixed(1):"-"}),jsx("span",{style:{fontSize:10,color:"var(--color-text-muted)"},children:i("predict.matches.centsYes")})]}),jsxs("div",{style:{fontSize:10,color:"var(--color-text-disabled)",marginTop:6},children:[Ws(e.volume)," ",i("predict.matches.volume")]})]});return l&&n?jsx(n,{href:l,className:"block",children:p}):p}function Ab(e){return formatAmountInUsd(e)}function Fb({matches:e,total:t}){let{t:r}=useTranslation(),o=useMemo(()=>{let n=0,i=0,s=new Set;for(let a of e){a.max_spread!=null&&a.max_spread>n&&(n=a.max_spread),a.combined_volume!=null&&(i+=a.combined_volume);for(let l of a.entries)s.add(typeof l.source=="string"?l.source:"");}return {count:t??e.length,maxSpread:n,totalVolume:i,platformCount:s.size}},[e,t]);return jsxs("div",{className:"flex flex-wrap items-center gap-x-4 gap-y-2 rounded-xl border border-border/60 bg-background/50 px-4 py-3 text-sm",children:[jsx(Zn,{label:r("predict.matches.stats.matchedMarkets"),value:o.count.toLocaleString()}),jsx(zs,{}),jsx(Zn,{label:r("predict.matches.stats.totalVolume"),value:Ab(o.totalVolume)}),jsx(zs,{}),jsx(Zn,{label:r("predict.matches.stats.highestSpread"),value:`${(o.maxSpread*100).toFixed(1)}\xA2`,valueClassName:"text-success"}),jsx(zs,{}),jsx(Zn,{label:r("predict.matches.stats.platforms"),value:String(o.platformCount)})]})}function Zn({label:e,value:t,valueClassName:r="text-text-primary"}){return jsxs("div",{className:"flex items-center gap-x-1.5",children:[jsxs("span",{className:"text-text-muted",children:[e,":"]}),jsx("span",{className:`font-semibold ${r}`,children:t})]})}function zs(){return jsx("span",{className:"hidden text-text-disabled sm:inline",children:"|"})}function jc(e){return `${(e*100).toFixed(1)}\xA2`}function Bb(e){return e>=.05?"text-success":e>=.02?"text-warning":"text-text-secondary"}function Hb({spread:e,arbProfit:t,className:r}){if(e==null)return null;let o=t!=null&&t>0;return jsxs("div",{className:cn$1("flex items-center gap-x-2",r),children:[jsx("span",{className:cn$1("text-sm font-semibold",Bb(e)),children:jc(e)}),o&&jsxs("span",{className:"text-xs text-success/80",children:["+",jc(t)]})]})}var Xo=10,Vb=64,Qc=40,ei=48;function Xc({solanaAddress:e,evmAddress:t,listHeight:r}){let{t:o}=useTranslation(),[n,i]=useState(1),{data:s,isLoading:a,fetchNextPage:l,hasNextPage:p,isFetchingNextPage:d}=useInfiniteTrades({source:"kalshi",wallet:e??"",limit:50}),{data:c,isLoading:m,fetchNextPage:u,hasNextPage:f,isFetchingNextPage:g}=useInfiniteTrades({source:"polymarket",wallet:t??"",limit:50}),b=a||m,h=d||g,S=p||f,x=useMemo(()=>{let A=[];return s?.pages&&A.push(...s.pages.flatMap(X=>X.items)),c?.pages&&A.push(...c.pages.flatMap(X=>X.items)),A.sort((X,L)=>(L.timestamp??0)-(X.timestamp??0)),A},[s,c]),y=Math.max(1,Math.ceil(x.length/Xo)+(S?1:0)),v=(n-1)*Xo,k=x.slice(v,v+Xo),P=useCallback(()=>{i(A=>Math.max(1,A-1));},[]),M=useCallback(async()=>{n*Xo>=x.length&&S&&(p&&await l(),f&&await u()),i(X=>X+1);},[n,x.length,S,p,f,l,u]),N=n>1,w=n*Xo<x.length||S;if(b)return jsx(Xb,{height:r});if(x.length===0&&!S)return jsx(Qb,{message:o("predict.profile.noHistory"),height:r});let R=r-Qc-ei;return jsxs("div",{className:"flex flex-col",style:{height:r},children:[jsxs("div",{className:"hidden lg:flex items-center text-text-muted text-xs font-normal shrink-0 border-b border-border/50",style:{height:Qc},children:[jsx("div",{className:"flex-[3] min-w-0 pr-2",children:o("predict.profile.event")}),jsx("div",{className:"flex-1 pr-2",children:o("predict.profile.action")}),jsx("div",{className:"flex-1 pr-2",children:o("predict.profile.status")}),jsx("div",{className:"flex-1 pr-2 text-right",children:o("predict.profile.price")}),jsx("div",{className:"flex-[1.5] pr-2 text-right",children:o("predict.profile.depositWithdraw")}),jsx("div",{className:"flex-1 pr-2 text-right",children:o("predict.profile.pnl")}),jsx("div",{className:"flex-1 pr-2 text-right",children:o("predict.profile.fee")}),jsx("div",{className:"w-10 shrink-0"})]}),jsxs("div",{className:"hidden lg:block overflow-y-auto",style:{height:R},children:[k.map((A,X)=>jsx(jb,{trade:A},A.id??`${v+X}`)),h&&jsx("div",{className:"flex justify-center items-center py-4",children:jsx(Spinner,{size:"sm"})})]}),jsxs("div",{className:"hidden lg:flex items-center justify-center gap-2 shrink-0",style:{height:ei},children:[jsxs("button",{type:"button",disabled:!N,onClick:P,className:cn$1("text-sm transition-colors cursor-pointer flex items-center gap-1",N?"text-text-muted hover:text-foreground":"text-text-muted/40 cursor-not-allowed"),children:["\u2190 ",o("predict.profile.previous")]}),Array.from({length:Math.min(y,5)},(A,X)=>{let L=X+1;return jsx("button",{type:"button",onClick:()=>i(L),className:cn$1("w-8 h-8 rounded text-sm transition-colors cursor-pointer",L===n?"bg-foreground/10 text-foreground font-medium":"text-text-muted hover:text-foreground"),children:L},L)}),jsxs("button",{type:"button",disabled:!w,onClick:M,className:cn$1("text-sm transition-colors cursor-pointer flex items-center gap-1",w?"text-text-muted hover:text-foreground":"text-text-muted/40 cursor-not-allowed"),children:[o("predict.profile.next")," \u2192"]})]}),jsx("div",{className:"lg:hidden flex flex-col gap-2 overflow-y-auto py-2",style:{height:r-ei},children:k.map((A,X)=>jsx(Gb,{trade:A},A.id??`m-${v+X}`))}),jsxs("div",{className:"lg:hidden flex items-center justify-center gap-3 shrink-0",style:{height:ei},children:[jsx("button",{type:"button",disabled:!N,onClick:P,className:cn$1("text-sm cursor-pointer",N?"text-text-muted hover:text-foreground":"text-text-muted/40 cursor-not-allowed"),children:"\u2190"}),jsx("span",{className:"text-sm text-foreground tabular-nums",children:n}),jsx("button",{type:"button",disabled:!w,onClick:M,className:cn$1("text-sm cursor-pointer",w?"text-text-muted hover:text-foreground":"text-text-muted/40 cursor-not-allowed"),children:"\u2192"})]})]})}function jb({trade:e}){let{t}=useTranslation(),r=e.type==="REDEEM",o=e.side?.toUpperCase()==="BUY",n=e.price??0,i=e.usd_size??0,s=Jc(e.type,h=>String(t(h))),a=r||o,l=a?"+":"-",p=a?"text-success":"text-foreground",d=e.event?.title??e.market?.question??"\u2014",c=e.event?.image_url,m=e.outcome??"",u=rd(e.timestamp),f=Zc(e),g=Yb(e),b=qb(e);return jsxs("div",{className:"flex items-center border-b border-border/50 hover:bg-content2/40 transition-colors text-sm",style:{height:Vb},children:[jsx("div",{className:"flex-[3] min-w-0 pr-2",children:jsxs("div",{className:"flex items-center gap-2.5 min-w-0",children:[c&&jsx("img",{src:c,alt:"",className:"w-8 h-8 rounded-full object-cover shrink-0"}),jsxs("div",{className:"flex flex-col gap-y-0.5 min-w-0",children:[jsx("span",{className:"text-foreground truncate font-medium text-sm",children:d}),jsxs("span",{className:"text-[11px] text-text-muted",children:[m&&jsx("span",{className:"mr-1",children:m}),jsx("span",{children:u})]})]})]})}),jsx("div",{className:"flex-1 pr-2",children:jsx("span",{className:cn$1("text-sm font-medium",r?"text-primary":o?"text-success":"text-danger"),children:t(r?"predict.profile.redeem":o?"predict.profile.buy":"predict.profile.sell")})}),jsx("div",{className:"flex-1 pr-2 text-sm text-foreground",children:s}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:td(n)}),jsx("div",{className:cn$1("flex-[1.5] pr-2 text-right font-mono",p),children:i>0?jsxs(Fragment,{children:[l,"$",i.toFixed(2)]}):"\u2014"}),jsx("div",{className:cn$1("flex-1 pr-2 text-right font-mono",g!==null?g>=0?"text-success":"text-danger":"text-text-muted"),children:g!==null?`${g>=0?"+":"-"}$${Math.abs(g).toFixed(2)}`:"\u2014"}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-text-muted",children:b!==null?`$${b.toFixed(2)}`:"\u2014"}),jsx("div",{className:"w-10 shrink-0 text-right",children:f&&jsx("a",{href:f,target:"_blank",rel:"noopener noreferrer",className:"text-text-muted hover:text-foreground transition-colors","aria-label":t("common.viewTransaction"),children:jsx(ed,{})})})]})}function Gb({trade:e}){let{t}=useTranslation(),r=e.type==="REDEEM",o=e.side?.toUpperCase()==="BUY",n=e.price??0,i=e.usd_size??0,s=Jc(e.type,d=>String(t(d))),a=e.event?.title??e.market?.question??"\u2014",l=rd(e.timestamp),p=Zc(e);return jsxs("div",{className:"rounded-lg border border-border bg-content1 p-3 flex flex-col gap-2",children:[jsxs("div",{className:"flex items-start justify-between gap-2",children:[jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[e.event?.image_url&&jsx("img",{src:e.event.image_url,alt:"",className:"w-6 h-6 rounded-full object-cover shrink-0"}),jsx("span",{className:"text-sm font-medium text-foreground line-clamp-2",children:a})]}),jsx("span",{className:"text-[11px] text-text-muted whitespace-nowrap",children:l})]}),jsxs("div",{className:"flex items-center gap-4 text-xs flex-wrap",children:[jsxs("div",{className:"flex flex-col",children:[jsx("span",{className:"text-text-muted",children:t("predict.profile.action")}),jsx("span",{className:cn$1("font-medium",r?"text-primary":o?"text-success":"text-danger"),children:t(r?"predict.profile.redeem":o?"predict.profile.buy":"predict.profile.sell")})]}),jsxs("div",{className:"flex flex-col",children:[jsx("span",{className:"text-text-muted",children:t("predict.profile.status")}),jsx("span",{className:"text-foreground",children:s})]}),jsxs("div",{className:"flex flex-col",children:[jsx("span",{className:"text-text-muted",children:t("predict.profile.price")}),jsx("span",{className:"font-mono text-foreground",children:td(n)})]}),jsxs("div",{className:"flex flex-col",children:[jsx("span",{className:"text-text-muted",children:t("predict.profile.depositWithdraw")}),jsx("span",{className:"font-mono text-foreground",children:i>0?`$${i.toFixed(2)}`:"\u2014"})]}),p&&jsx("a",{href:p,target:"_blank",rel:"noopener noreferrer",className:"ml-auto text-text-muted hover:text-foreground transition-colors",children:jsx(ed,{})})]})]})}function Jc(e,t){switch(e){case "TRADE":return t("predict.profile.filled");case "REDEEM":return t("predict.profile.claimed");case "SPLIT":case "MERGE":case "CONVERSION":return t("predict.profile.created");default:return e}}function Zc(e){if(e.tx_hash)return e.source==="polymarket"?`https://polygonscan.com/tx/${e.tx_hash}`:`https://solscan.io/tx/${e.tx_hash}`}function Yb(e){let t=e.provider_meta;if(t){let r=t.pnl??t.profit??t.realized_pnl??t["dflow.pnl"];if(typeof r=="number")return r;if(typeof r=="string"&&r!==""){let o=parseFloat(r);if(!Number.isNaN(o))return o}}return e.type==="REDEEM"&&e.usd_size!=null?e.usd_size:null}function qb(e){let t=e.provider_meta;if(t){let r=t.fee??t.fees??t.trading_fee??t["dflow.fee"];if(typeof r=="number")return r;if(typeof r=="string"&&r!==""){let o=parseFloat(r);if(!Number.isNaN(o))return o}}return null}function ed(){return jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[jsx("path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"}),jsx("polyline",{points:"15 3 21 3 21 9"}),jsx("line",{x1:"10",y1:"14",x2:"21",y2:"3"})]})}function Qb({message:e,height:t}){return jsx("div",{className:"flex items-center justify-center text-sm text-text-muted",style:{height:t},children:e})}function Xb({height:e}){return jsx("div",{className:"flex flex-col gap-y-2 py-3 animate-pulse",style:{height:e},children:Array.from({length:6}).map((t,r)=>jsx(Skeleton,{className:"h-12 w-full rounded-md"},r))})}function td(e){let t=e*100;return t<1&&t>0?"< 1\xA2":`${t.toFixed(t%1===0?0:1)}\xA2`}function rd(e){let t=new Date(e*1e3),r=t.getHours().toString().padStart(2,"0"),o=t.getMinutes().toString().padStart(2,"0"),n=t.getDate().toString().padStart(2,"0"),i=(t.getMonth()+1).toString().padStart(2,"0"),s=t.getFullYear(),a=t.getTimezoneOffset(),l=a<=0?"+":"-",p=String(Math.abs(Math.floor(a/60))).padStart(2,"0");return `${r}:${o} ${n}/${i}/${s} (${l}${p})`}var Jo=10,n0=64,nd=40,ti=48;function sd({solanaAddress:e,evmAddress:t,listHeight:r}){let{t:o}=useTranslation(),n=useCancelOrder(),[i,s]=useState(1),{data:a,isLoading:l,fetchNextPage:p,hasNextPage:d,isFetchingNextPage:c}=useInfiniteOrders({source:"kalshi",wallet_address:e??""}),{data:m,isLoading:u,fetchNextPage:f,hasNextPage:g,isFetchingNextPage:b}=useInfiniteOrders({source:"polymarket",wallet_address:t??""}),h=l||u,S=c||b,x=d||g,y=useMemo(()=>{let L=[],G=new Set(["live","open","submitted","pending"]);return a?.pages&&L.push(...a.pages.flatMap(U=>U.items).filter(U=>G.has(U.status))),m?.pages&&L.push(...m.pages.flatMap(U=>U.items).filter(U=>G.has(U.status))),L},[a,m]),v=useCallback(L=>{n.mutate({source:L.source,id:L.id});},[n]),k=Math.max(1,Math.ceil(y.length/Jo)+(x?1:0)),P=(i-1)*Jo,M=y.slice(P,P+Jo),N=useCallback(()=>{s(L=>Math.max(1,L-1));},[]),w=useCallback(async()=>{i*Jo>=y.length&&x&&(d&&await p(),g&&await f()),s(G=>G+1);},[i,y.length,x,d,g,p,f]),R=i>1,A=i*Jo<y.length||x;if(h)return jsx(l0,{height:r});if(y.length===0&&!x)return jsx(a0,{message:o("predict.profile.noOrders"),height:r});let X=r-nd-ti;return jsxs("div",{className:"flex flex-col",style:{height:r},children:[jsxs("div",{className:"hidden lg:flex items-center text-text-muted text-xs font-normal shrink-0 border-b border-border/50",style:{height:nd},children:[jsx("div",{className:"flex-[3] min-w-0 pr-2",children:o("predict.profile.event")}),jsx("div",{className:"flex-1 pr-2",children:o("predict.profile.action")}),jsx("div",{className:"flex-1 pr-2",children:o("predict.profile.type")}),jsx("div",{className:"flex-1 pr-2 text-right",children:o("predict.profile.fillPrice")}),jsx("div",{className:"flex-1 pr-2 text-right",children:o("predict.profile.cost")})]}),jsxs("div",{className:"hidden lg:block overflow-y-auto",style:{height:X},children:[M.map(L=>jsx(i0,{order:L,onCancel:v},L.id)),S&&jsx("div",{className:"flex justify-center items-center py-4",children:jsx(Spinner,{size:"sm"})})]}),jsx(id,{className:"hidden lg:flex",currentPage:i,totalPages:k,canGoPrev:R,canGoNext:A,onPrev:N,onNext:w,onPage:s,paginationLabel:L=>String(o(L))}),jsx("div",{className:"lg:hidden flex flex-col gap-2 overflow-y-auto py-2",style:{height:r-ti},children:M.map(L=>jsx(s0,{order:L,onCancel:v},L.id))}),jsx(id,{className:"lg:hidden",currentPage:i,totalPages:k,canGoPrev:R,canGoNext:A,onPrev:N,onNext:w,onPage:s,paginationLabel:L=>String(o(L)),compact:true})]})}function i0({order:e}){let{t}=useTranslation(),r=e.side==="BUY",o=e.price?parseFloat(e.price):0,n=e.in_amount?parseFloat(e.in_amount):o*parseFloat(e.original_size??"0");return jsxs("div",{className:"flex items-center border-b border-border/50 hover:bg-content2/40 transition-colors text-sm",style:{height:n0},children:[jsx("div",{className:"flex-[3] min-w-0 pr-2",children:jsx("div",{className:"flex flex-col gap-y-0.5 min-w-0",children:jsx("span",{className:"text-foreground truncate font-medium",children:e.outcome??e.market_id??"\u2014"})})}),jsx("div",{className:"flex-1 pr-2",children:jsx("span",{className:cn$1("text-sm font-medium",r?"text-success":"text-danger"),children:t(r?"predict.profile.buy":"predict.profile.sell")})}),jsx("div",{className:"flex-1 pr-2 text-text-muted capitalize text-sm",children:e.order_type?.toLowerCase()==="market"?t("predict.trade.market"):t("predict.trade.limit")}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:o>0?ad(o):"\u2014"}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:n>0?`$${n.toFixed(2)}`:"\u2014"})]})}function s0({order:e,onCancel:t}){let{t:r}=useTranslation(),o=e.side==="BUY",n=e.price?parseFloat(e.price):0;return jsxs("div",{className:"rounded-lg border border-border bg-content1 p-3 flex flex-col gap-2",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsxs("div",{className:"flex items-center gap-2",children:[jsx("span",{className:cn$1("text-xs font-medium px-1.5 py-0.5 rounded",o?"bg-success/10 text-success":"bg-danger/10 text-danger"),children:e.side}),jsx("span",{className:"text-sm text-foreground capitalize",children:e.outcome??"\u2014"})]}),jsx("span",{className:"text-xs text-text-muted capitalize",children:e.order_type?.toLowerCase()==="market"?r("predict.trade.market"):r("predict.trade.limit")})]}),jsxs("div",{className:"flex items-center gap-4 text-xs",children:[jsxs("div",{className:"flex flex-col",children:[jsx("span",{className:"text-text-muted",children:r("predict.profile.fillPrice")}),jsx("span",{className:"font-mono text-foreground",children:n>0?ad(n):"\u2014"})]}),jsx("div",{className:"flex-1"}),jsx("button",{type:"button",onClick:()=>t(e),className:"text-xs text-danger hover:text-danger/80 cursor-pointer border border-border rounded px-2 py-1",children:r("predict.orders.cancel")})]})]})}function id({className:e,currentPage:t,totalPages:r,canGoPrev:o,canGoNext:n,onPrev:i,onNext:s,onPage:a,paginationLabel:l,compact:p}){return p?jsxs("div",{className:cn$1("flex items-center justify-center gap-3 shrink-0",e),style:{height:ti},children:[jsx("button",{type:"button",disabled:!o,onClick:i,className:cn$1("text-sm cursor-pointer",o?"text-text-muted hover:text-foreground":"text-text-muted/40 cursor-not-allowed"),children:"\u2190"}),jsx("span",{className:"text-sm text-foreground tabular-nums",children:t}),jsx("button",{type:"button",disabled:!n,onClick:s,className:cn$1("text-sm cursor-pointer",n?"text-text-muted hover:text-foreground":"text-text-muted/40 cursor-not-allowed"),children:"\u2192"})]}):jsxs("div",{className:cn$1("flex items-center justify-center gap-2 shrink-0",e),style:{height:ti},children:[jsxs("button",{type:"button",disabled:!o,onClick:i,className:cn$1("text-sm transition-colors cursor-pointer flex items-center gap-1",o?"text-text-muted hover:text-foreground":"text-text-muted/40 cursor-not-allowed"),children:["\u2190 ",l("predict.profile.previous")]}),Array.from({length:Math.min(r,5)},(d,c)=>{let m=c+1;return jsx("button",{type:"button",onClick:()=>a(m),className:cn$1("w-8 h-8 rounded text-sm transition-colors cursor-pointer",m===t?"bg-foreground/10 text-foreground font-medium":"text-text-muted hover:text-foreground"),children:m},m)}),jsxs("button",{type:"button",disabled:!n,onClick:s,className:cn$1("text-sm transition-colors cursor-pointer flex items-center gap-1",n?"text-text-muted hover:text-foreground":"text-text-muted/40 cursor-not-allowed"),children:[l("predict.profile.next")," \u2192"]})]})}function a0({message:e,height:t}){return jsx("div",{className:"flex items-center justify-center text-sm text-text-muted",style:{height:t},children:e})}function l0({height:e}){return jsx("div",{className:"flex flex-col gap-y-2 py-3 animate-pulse",style:{height:e},children:Array.from({length:6}).map((t,r)=>jsx(Skeleton,{className:"h-12 w-full rounded-md"},r))})}function ad(e){let t=e*100;return t<1&&t>0?"< 1\xA2":`${t.toFixed(t%1===0?0:1)}\xA2`}var Gs=10,p0=64,ld=40,ri=48,m0="\u2715";function cd({positions:e,isLoading:t,listHeight:r,onClosePosition:o,onEventClick:n}){let{t:i}=useTranslation(),[s,a]=useState(1),l=useCallback(()=>{for(let g of e)o?.(g);},[e,o]);if(t)return jsx(v0,{height:r});if(e.length===0)return jsx(h0,{message:i("predict.profile.noPositions"),height:r});let p=Math.max(1,Math.ceil(e.length/Gs)),d=(s-1)*Gs,c=e.slice(d,d+Gs),m=s>1,u=s<p,f=r-ld-ri;return jsxs("div",{className:"flex flex-col",style:{height:r},children:[jsxs("div",{className:"hidden lg:flex items-center text-text-muted text-xs font-normal shrink-0 border-b border-border/50",style:{height:ld},children:[jsx("div",{className:"flex-[3] min-w-0 pr-2",children:i("predict.profile.event")}),jsx("div",{className:"flex-1 pr-2 text-right",children:i("predict.profile.totalSize")}),jsx("div",{className:"flex-1 pr-2 text-right",children:i("predict.profile.value")}),jsx("div",{className:"flex-1 pr-2 text-right",children:i("predict.profile.avgPrice")}),jsx("div",{className:"flex-1 pr-2 text-right",children:i("predict.profile.markPrice")}),jsxs("div",{className:"flex-[1.5] pr-2 text-right",children:[jsx("span",{children:i("predict.profile.pnl")}),jsxs("span",{className:"text-[10px] ml-1 opacity-60",children:["(",i("predict.profile.pnlExcludeFees"),")"]})]}),jsx("div",{className:"flex-1 pr-2 text-right",children:i("predict.profile.payoutIfRight")}),jsx("div",{className:"flex-[1.5] pr-2 text-right",children:i("predict.profile.estSettlement")}),jsx("div",{className:"w-20 shrink-0 text-right",children:o&&e.length>0&&jsx("button",{type:"button",onClick:l,className:"text-xs text-primary hover:text-primary/80 cursor-pointer transition-colors",children:i("predict.profile.closeAll")})})]}),jsx("div",{className:"hidden lg:block overflow-y-auto",style:{height:f},children:c.map((g,b)=>jsx(f0,{position:g,onClosePosition:o,onEventClick:n},`${g.source}-${g.market?.slug??d+b}`))}),jsxs("div",{className:"hidden lg:flex items-center justify-center gap-2 shrink-0",style:{height:ri},children:[jsxs("button",{type:"button",disabled:!m,onClick:()=>a(g=>Math.max(1,g-1)),className:cn$1("text-sm transition-colors cursor-pointer flex items-center gap-1",m?"text-text-muted hover:text-foreground":"text-text-muted/40 cursor-not-allowed"),children:["\u2190 ",i("predict.profile.previous")]}),Array.from({length:Math.min(p,5)},(g,b)=>{let h=b+1;return jsx("button",{type:"button",onClick:()=>a(h),className:cn$1("w-8 h-8 rounded text-sm transition-colors cursor-pointer",h===s?"bg-foreground/10 text-foreground font-medium":"text-text-muted hover:text-foreground"),children:h},h)}),jsxs("button",{type:"button",disabled:!u,onClick:()=>a(g=>g+1),className:cn$1("text-sm transition-colors cursor-pointer flex items-center gap-1",u?"text-text-muted hover:text-foreground":"text-text-muted/40 cursor-not-allowed"),children:[i("predict.profile.next")," \u2192"]})]}),jsx("div",{className:"lg:hidden flex flex-col gap-2 overflow-y-auto py-2",style:{height:r-ri},children:c.map((g,b)=>jsx(g0,{position:g,onClose:o,onEventClick:n},`${g.source}-${g.market?.slug??`m-${d+b}`}`))}),jsxs("div",{className:"lg:hidden flex items-center justify-center gap-3 shrink-0",style:{height:ri},children:[jsx("button",{type:"button",disabled:!m,onClick:()=>a(g=>Math.max(1,g-1)),className:cn$1("text-sm cursor-pointer",m?"text-text-muted hover:text-foreground":"text-text-muted/40 cursor-not-allowed"),children:"\u2190"}),jsx("span",{className:"text-sm text-foreground tabular-nums",children:s}),jsx("button",{type:"button",disabled:!u,onClick:()=>a(g=>g+1),className:cn$1("text-sm cursor-pointer",u?"text-text-muted hover:text-foreground":"text-text-muted/40 cursor-not-allowed"),children:"\u2192"})]})]})}function f0({position:e,onClosePosition:t,onEventClick:r}){let{t:o}=useTranslation(),n=e.pnl??0,i=e.pnl_percent??0,s=e.avg_price??0,a=e.current_price??0,l=e.current_value??e.size*a,p=e.size,d=n>0?"text-success":n<0?"text-danger":"text-foreground",c=n>0?"+":"",m=e.event?.title??e.market?.question??"\u2014",u=e.event?.image_url,f=e.side,g=e.market?.outcomes?.[0]?.label??"",b=e.market?.end_at?x0(e.market.end_at):"\u2014";return jsxs("div",{className:"flex items-center border-b border-border/50 hover:bg-content2/40 transition-colors text-sm",style:{height:p0},children:[jsx("div",{className:"flex-[3] min-w-0 pr-2",children:jsxs("button",{type:"button",className:"flex items-center gap-2.5 min-w-0 cursor-pointer text-left",onClick:()=>e.event&&r?.(e.event),children:[u&&jsx("img",{src:u,alt:"",className:"w-8 h-8 rounded-full object-cover shrink-0"}),jsxs("div",{className:"flex flex-col gap-y-0.5 min-w-0",children:[jsx("span",{className:"text-foreground truncate font-medium text-sm",children:m}),jsxs("span",{className:"text-[11px] text-text-muted",children:[jsx("span",{className:cn$1("font-medium",f.toLowerCase()==="yes"?"text-success":"text-danger"),children:f}),g&&jsxs(Fragment,{children:[jsx("span",{className:"mx-1",children:"\xB7"}),jsx("span",{children:g})]})]})]})]})}),jsx("div",{className:"flex-1 pr-2 text-right",children:jsxs("div",{className:"flex flex-col items-end",children:[jsxs("span",{className:"font-mono text-foreground",children:["$",l.toFixed(2)]}),jsx("span",{className:"text-[10px] text-text-muted",children:o("predict.profile.contracts",{count:e.size})})]})}),jsxs("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:["$",(e.size*s).toFixed(2)]}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:Ys(s)}),jsx("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:Ys(a)}),jsxs("div",{className:cn$1("flex-[1.5] pr-2 text-right font-mono",d),children:[jsxs("span",{children:[c,"$",Math.abs(n).toFixed(2)]}),jsxs("span",{className:"text-[10px] ml-0.5 opacity-70",children:["(",c,i.toFixed(2),"%)"]})]}),jsxs("div",{className:"flex-1 pr-2 text-right font-mono text-foreground",children:["$",p.toFixed(2)]}),jsx("div",{className:"flex-[1.5] pr-2 text-right text-text-muted whitespace-nowrap text-xs",children:b}),jsx("div",{className:"w-20 shrink-0 text-right",children:t&&jsxs("button",{type:"button",onClick:()=>t(e),className:"inline-flex items-center gap-1 text-xs text-text-muted hover:text-foreground cursor-pointer transition-colors",children:[jsx("span",{className:"text-danger",children:m0}),o("predict.profile.close")]})})]})}function g0({position:e,onClose:t,onEventClick:r}){let{t:o}=useTranslation(),n=e.pnl??0,i=e.pnl_percent??0,s=e.current_price??0,a=n>0?"text-success":n<0?"text-danger":"text-foreground",l=n>0?"+":"",p=e.event?.title??e.market?.question??"\u2014";return jsxs("div",{className:"rounded-lg border border-border bg-content1 p-3 flex flex-col gap-2",children:[jsxs("button",{type:"button",className:"flex items-start justify-between gap-2 text-left cursor-pointer",onClick:()=>e.event&&r?.(e.event),children:[jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[e.event?.image_url&&jsx("img",{src:e.event.image_url,alt:"",className:"w-7 h-7 rounded-full object-cover shrink-0"}),jsx("span",{className:"text-sm font-medium text-foreground line-clamp-2",children:p})]}),jsx("span",{className:cn$1("shrink-0 text-xs font-medium px-1.5 py-0.5 rounded",e.side.toLowerCase()==="yes"?"bg-success/10 text-success":"bg-danger/10 text-danger"),children:e.side})]}),jsxs("div",{className:"flex items-center gap-4 text-xs flex-wrap",children:[jsx(oi,{label:o("predict.profile.totalSize"),value:Nr(e.size)}),jsx(oi,{label:o("predict.profile.markPrice"),value:Ys(s)}),jsx(oi,{label:o("predict.profile.pnl"),value:`${l}$${Math.abs(n).toFixed(2)} (${l}${i.toFixed(1)}%)`,className:a}),jsx(oi,{label:o("predict.profile.payoutIfRight"),value:`$${e.size.toFixed(2)}`})]}),t&&jsx("div",{className:"flex justify-end",children:jsx("button",{type:"button",onClick:()=>t(e),className:"text-xs text-danger hover:text-danger/80 cursor-pointer transition-colors border border-border rounded px-2 py-1",children:o("predict.profile.close")})})]})}function oi({label:e,value:t,className:r}){return jsxs("div",{className:"flex flex-col",children:[jsx("span",{className:"text-text-muted",children:e}),jsx("span",{className:cn$1("font-mono text-foreground",r),children:t})]})}function h0({message:e,height:t}){return jsx("div",{className:"flex items-center justify-center text-sm text-text-muted",style:{height:t},children:e})}function v0({height:e}){return jsx("div",{className:"flex flex-col gap-y-2 py-3 animate-pulse",style:{height:e},children:Array.from({length:6}).map((t,r)=>jsx(Skeleton,{className:"h-12 w-full rounded-md"},r))})}function Ys(e){let t=e*100;return t<1&&t>0?"< 1\xA2":`${t.toFixed(t%1===0?0:1)}\xA2`}function x0(e){try{let t=new Date(e),r=t.getHours().toString().padStart(2,"0"),o=t.getMinutes().toString().padStart(2,"0"),n=t.getDate().toString().padStart(2,"0"),i=(t.getMonth()+1).toString().padStart(2,"0"),s=t.getFullYear(),a=t.getTimezoneOffset(),l=a<=0?"+":"-",p=String(Math.abs(Math.floor(a/60))).padStart(2,"0");return `${r}:${o} ${n}/${i}/${s} (${l}${p})`}catch{return "\u2014"}}function ud({positions:e,trades:t,isLoading:r,positionsValue:o,positionsValueLoading:n}){let{t:i}=useTranslation(),s=useMemo(()=>{let p=0,d=0;for(let g of e)p+=g.realized_pnl??0,d+=g.current_value??g.size*(g.current_price??0);let c=0,m=0,u=0;for(let g of t)c+=g.usd_size??0,g.type==="REDEEM"&&(u++,(g.usd_size??0)>0&&m++);let f=u>0?`${m} / ${u}`:"0 / 0";return {realizedPnl:p,positionsValue:o??d,volume:c,winRateStr:f}},[e,o,t]),a=s.realizedPnl>0?"text-success":s.realizedPnl<0?"text-danger":"text-foreground",l=s.realizedPnl>0?"+":"";return jsxs("div",{className:"flex flex-col sm:flex-row sm:items-center sm:justify-between gap-4 py-8",children:[jsxs("div",{className:"flex flex-col gap-1",children:[jsx("span",{className:"text-xl text-text-muted",children:i("predict.profile.realizedPnl")}),r?jsx(Skeleton,{className:"h-14 w-48 rounded-md"}):jsxs("span",{className:cn$1("text-5xl font-bold tabular-nums",a),children:[l,"$",Math.abs(s.realizedPnl).toFixed(2)]})]}),jsxs("div",{className:"flex items-end gap-8 sm:gap-10",children:[jsx(Qs,{label:i("predict.profile.winRate"),value:s.winRateStr,isLoading:r}),jsx(Qs,{label:i("predict.profile.positions"),value:`$${s.positionsValue.toFixed(2)}`,isLoading:n??r}),jsx(Qs,{label:i("predict.profile.volume"),value:`$${s.volume.toFixed(2)}`,isLoading:r})]})]})}function Qs({label:e,value:t,isLoading:r}){return jsxs("div",{className:"flex flex-col items-end gap-0.5",children:[jsx("span",{className:"text-sm text-text-muted whitespace-nowrap",children:e}),r?jsx(Skeleton,{className:"h-6 w-14 rounded-md"}):jsx("span",{className:"text-base font-semibold tabular-nums text-foreground",children:t})]})}var Js=600;function gd({solanaAddress:e,evmAddress:t,onClosePosition:r,onEventClick:o}){let{t:n}=useTranslation(),[i,s]=useState("positions"),a=!!(e||t),{data:l,isLoading:p}=usePositions({source:"kalshi",user:e??""}),{data:d,isLoading:c}=usePositions({source:"polymarket",user:t??""}),m=useMemo(()=>{let w=[];return l?.positions&&w.push(...l.positions),d?.positions&&w.push(...d.positions),w},[l,d]),u=p||c,{data:f,isLoading:g}=usePositionValueMulti({kalshi_user:e||void 0,polymarket_user:t||void 0}),b=useMemo(()=>{if(!f)return;let w=Number(f.value);return Number.isFinite(w)?w:void 0},[f]),{data:h,isLoading:S}=useInfiniteTrades({source:"kalshi",wallet:e??"",limit:100}),{data:x,isLoading:y}=useInfiniteTrades({source:"polymarket",wallet:t??"",limit:100}),v=useMemo(()=>[...h?.pages?.flatMap(R=>R.items)??[],...x?.pages?.flatMap(R=>R.items)??[]],[h,x]),k=u||S||y,P=m.length,N=[{key:"positions",label:P>0?`${n("predict.profile.positionsTab")} (${P})`:n("predict.profile.positionsTab")},{key:"orders",label:n("predict.profile.openOrdersTab")},{key:"history",label:n("predict.profile.historyTab")}];return a?jsxs("div",{className:"flex flex-col max-w-[1280px] mx-auto w-full px-4 max-sm:px-2",children:[jsx(ud,{positions:m,trades:v,isLoading:k,positionsValue:b,positionsValueLoading:g}),jsx("div",{className:"flex items-center gap-1 border-b border-border",children:N.map(w=>jsx("button",{type:"button",onClick:()=>s(w.key),className:cn$1("px-3 py-3 text-base font-normal transition-colors cursor-pointer whitespace-nowrap",i===w.key?"text-foreground border-b-2 border-foreground":"text-text-muted hover:text-foreground"),children:w.label},w.key))}),jsxs("div",{className:"py-2",children:[i==="positions"&&jsx(cd,{positions:m,isLoading:u,listHeight:Js,onClosePosition:r,onEventClick:o}),i==="orders"&&jsx(sd,{solanaAddress:e,evmAddress:t,listHeight:Js}),i==="history"&&jsx(Xc,{solanaAddress:e,evmAddress:t,listHeight:Js})]})]}):jsx("div",{className:"flex items-center justify-center text-sm text-text-muted py-24 px-4",children:n("predict.profile.connectWallet")})}function O0({isOpen:e,onClose:t,safeDeployed:r,tokenApproved:o,onDeployAndApprove:n}){let{t:i}=useTranslation(),[s,a]=useState(false),[l,p]=useState(null),[d,c]=useState(false),m=r||d,u=o||d,f=m?"done":s?"running":"pending",g=u?"done":m&&s?"running":"pending",b=m&&u,h=useCallback(async()=>{p(null),c(false),a(true);try{await n(),c(!0);}catch(v){p(v instanceof Error?v.message:String(v));}finally{a(false);}},[n]),S=[{key:"step1",label:i("predict.setup.step1"),desc:i("predict.setup.step1Desc"),status:f},{key:"step2",label:i("predict.setup.step2"),desc:i("predict.setup.step2Desc"),status:g}],x=()=>{b?t():h();},y=i(b?"predict.setup.done":"predict.setup.setupButton");return jsx(StyledModal,{isOpen:e,onOpenChange:v=>{v||t();},size:"md",classNames:{base:THEMED_MODAL_BASE_CLASS,body:"!p-0"},children:jsx(ModalContent,{children:jsxs("div",{children:[jsxs("div",{className:"flex items-center justify-between px-5 pt-5 pb-4",children:[jsx("h3",{className:"text-base font-semibold text-text-primary",children:i("predict.setup.modalTitle")}),jsx("button",{type:"button",onClick:t,className:"p-1 rounded-[10px] hover:bg-surface-strong/50 text-text-secondary hover:text-text-primary transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:jsxs("svg",{width:16,height:16,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round",children:[jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})})]}),jsxs("div",{className:"px-5 pb-5 space-y-4",children:[jsx("p",{className:"text-[13px] text-text-secondary text-left",children:i("predict.setup.modalDescription")}),jsx("div",{className:"space-y-2.5",children:S.map((v,k)=>jsxs("div",{className:"flex gap-3 rounded-[10px] border border-border-control/50 bg-surface-interactive/50 px-3 py-3",children:[jsx(_0,{index:k+1,status:v.status}),jsxs("div",{className:"flex-1 min-w-0 pt-0.5",children:[jsxs("div",{className:"flex items-center gap-2",children:[jsx("p",{className:"text-sm font-medium text-text-primary",children:v.label}),jsx("span",{className:`text-[11px] leading-none ${v.status==="done"?"text-brand-primary":v.status==="running"?"text-brand-primary/70":"text-text-muted"}`,children:v.status==="done"?i("predict.setup.stepComplete"):v.status==="running"?i("predict.setup.stepRunning"):i("predict.setup.stepPending")})]}),jsx("p",{className:"text-xs text-text-muted mt-1",children:v.desc})]})]},v.key))}),l&&jsx("div",{className:"rounded-[10px] bg-danger/10 border border-danger/20 px-3 py-2",children:jsx("p",{className:"text-xs text-danger",children:l})}),jsx("button",{type:"button",onClick:x,disabled:s,className:b?"w-full py-3 rounded-[10px] bg-action-primary text-text-inverse text-sm font-semibold hover:bg-action-primary-hover transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus":"w-full py-3 rounded-[10px] bg-action-primary text-text-inverse text-sm font-semibold hover:bg-action-primary-hover transition-colors cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:s?jsxs("span",{className:"inline-flex items-center gap-2",children:[jsxs("svg",{className:"animate-spin h-4 w-4",viewBox:"0 0 24 24",fill:"none",children:[jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"3",className:"opacity-25"}),jsx("path",{d:"M4 12a8 8 0 018-8",stroke:"currentColor",strokeWidth:"3",strokeLinecap:"round",className:"opacity-75"})]}),i("predict.setup.stepRunning")]}):y}),!b&&jsx("button",{type:"button",onClick:t,className:"w-full py-2.5 rounded-[10px] text-sm text-text-secondary hover:text-text-primary hover:bg-surface-strong/50 transition-colors cursor-pointer focus-visible:z-10 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-focus",children:i("common.cancel")})]})]})})})}function _0({index:e,status:t}){return t==="done"?jsx("span",{className:"flex h-8 w-8 items-center justify-center rounded-full bg-action-primary/15 shrink-0",children:jsx("svg",{width:16,height:16,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2.5,strokeLinecap:"round",strokeLinejoin:"round",className:"text-brand-primary",children:jsx("polyline",{points:"20 6 9 17 4 12"})})}):t==="running"?jsx("span",{className:"flex h-8 w-8 items-center justify-center rounded-full bg-action-primary/10 shrink-0",children:jsxs("svg",{className:"animate-spin h-4 w-4 text-brand-primary",viewBox:"0 0 24 24",fill:"none",children:[jsx("circle",{cx:"12",cy:"12",r:"10",stroke:"currentColor",strokeWidth:"3",className:"opacity-25"}),jsx("path",{d:"M4 12a8 8 0 018-8",stroke:"currentColor",strokeWidth:"3",strokeLinecap:"round",className:"opacity-75"})]})}):jsx("span",{className:"flex h-8 w-8 items-center justify-center rounded-full bg-surface-strong/50 text-xs font-bold text-text-secondary shrink-0",children:e})}
136
- export{xi as CHART_RANGE_DURATION,Od as CHART_RANGE_FIDELITY_MINUTES,Rd as CHART_RANGE_PERIOD,Ld as CHART_RANGE_SAMPLE_INTERVAL,Vr as CandlestickPeriod,Nd as CategoriesSkeleton,mi as CategoriesUI,gi as CategoriesWidget,$ as ChartRange,Gn as CommentItemUI,bo as DEFAULT_CHART_RANGE,Xr as DEFAULT_FILTER_STATE,jr as DEFAULT_PAGE_SIZE,Ad as DEFAULT_PRICE_HISTORY_INTERVAL,ac as EventCommentsWidget,Ih as EventDetailPage,ro as EventDetailSkeleton,$o as EventDetailUI,Fh as EventDetailWidget,Ui as EventItem,us as EventMarketDepthChartUI,fs as EventMarketDetailWidget,vs as EventPriceChart,Oi as EventsFilterUI,mm as EventsHero,cm as EventsPage,Pp as EventsPageSkeleton,kn as EventsSkeleton,Ii as EventsToolbarUI,zi as EventsUI,$i as EventsWidget,wo as KycModal,mn as MAX_PRICE_HISTORY_MARKETS,Ob as MatchGroupCard,Bs as MatchMarketCard,Ds as MatchesFilterBar,As as MatchesHero,Nb as MatchesPage,Fb as MatchesStatsBar,Us as MatchesWidget,Dd as ORDER_MAX_PRICE,Id as ORDER_MIN_PRICE,yo as ORDER_MIN_QUANTITY,ko as ORDER_MIN_USDC,_d as ORDER_PRICE_STEP,pa as POLYMARKET_BUILDER_TAKER_FEE_BPS,ma as POLYMARKET_SPORTS_TAKER_FEE_BPS,tl as PREDICT_REDEEM_MODAL_ID,cc as PREDICT_SEARCH_HISTORY_KEY,Qn as PREDICT_SEARCH_MODAL_ID,En as PREDICT_SELL_MODAL_ID,qr as PREDICT_TRADE_MODAL_ID,Fd as PRICE_HISTORY_SAMPLE_INTERVAL,Gi as PredictRedeemModal,vx as PredictSearchModal,ts as PredictSellModal,Co as PredictTradeModal,da as PredictWalletProvider,Pr as PriceHistoryInterval,gd as ProfilePage,ji as RedeemFormWidget,_i as SORT_PRESETS,an as STATIC_CATEGORIES,Nx as SearchEventsButton,Ps as SearchHistoryUI,Ns as SearchHistoryWidget,Ms as SearchInputUI,Es as SearchResultItemUI,Rs as SearchResultListWidget,Os as SearchWidget,es as SellFormUI,_o as SellFormWidget,O0 as SetupModal,Ql as SimilarEventCard,bs as SimilarEventsSection,jx as SourceBadge,Hb as SpreadIndicator,cs as TradeFormSkeleton,Li as TradeFormUI,Eo as TradeFormWidget,ss as UserActivitySection,Pi as computeMaxBuyAmount,bn as countActiveFilters,uo as createPredictSearchHistoryStorage,Mr as createTradeResultToast,Ni as estimatePolymarketBuyFee,Mi as estimatePolymarketSellFee,wi as fireCelebration,be as floorToDecimals,oo as formatKMB,Nr as formatShares,Or as getSourceMeta,fv as orderIntentView,No as parsePolymarketError,ua as polymarketFeeFactor,So as resolveExpiration,Si as resolvePolymarketDisplayFeeRateBps,Po as roundToTickSize,$h as useEventDetail,Di as useEventsInfinite,Ss as usePredictSearchHistory,cr as usePredictWallet,Cs as useSearchResultListScript,Ex as useSearchScript,Xi as useSellForm,Ci as useTradeForm};//# sourceMappingURL=index.mjs.map
136
+ export{xi as CHART_RANGE_DURATION,Od as CHART_RANGE_FIDELITY_MINUTES,Rd as CHART_RANGE_PERIOD,Ld as CHART_RANGE_SAMPLE_INTERVAL,Vr as CandlestickPeriod,Nd as CategoriesSkeleton,mi as CategoriesUI,gi as CategoriesWidget,$ as ChartRange,Gn as CommentItemUI,yo as DEFAULT_CHART_RANGE,Xr as DEFAULT_FILTER_STATE,jr as DEFAULT_PAGE_SIZE,Ad as DEFAULT_PRICE_HISTORY_INTERVAL,ac as EventCommentsWidget,Ih as EventDetailPage,ro as EventDetailSkeleton,Ko as EventDetailUI,Fh as EventDetailWidget,Ui as EventItem,us as EventMarketDepthChartUI,fs as EventMarketDetailWidget,vs as EventPriceChart,Oi as EventsFilterUI,mm as EventsHero,cm as EventsPage,Pp as EventsPageSkeleton,kn as EventsSkeleton,Ii as EventsToolbarUI,zi as EventsUI,$i as EventsWidget,Eo as KycModal,mn as MAX_PRICE_HISTORY_MARKETS,Ob as MatchGroupCard,Bs as MatchMarketCard,Ds as MatchesFilterBar,As as MatchesHero,Nb as MatchesPage,Fb as MatchesStatsBar,Us as MatchesWidget,Dd as ORDER_MAX_PRICE,Id as ORDER_MIN_PRICE,ko as ORDER_MIN_QUANTITY,So as ORDER_MIN_USDC,_d as ORDER_PRICE_STEP,pa as POLYMARKET_BUILDER_TAKER_FEE_BPS,ma as POLYMARKET_SPORTS_TAKER_FEE_BPS,tl as PREDICT_REDEEM_MODAL_ID,cc as PREDICT_SEARCH_HISTORY_KEY,Qn as PREDICT_SEARCH_MODAL_ID,En as PREDICT_SELL_MODAL_ID,qr as PREDICT_TRADE_MODAL_ID,Fd as PRICE_HISTORY_SAMPLE_INTERVAL,Gi as PredictRedeemModal,vx as PredictSearchModal,ts as PredictSellModal,To as PredictTradeModal,da as PredictWalletProvider,Pr as PriceHistoryInterval,gd as ProfilePage,ji as RedeemFormWidget,_i as SORT_PRESETS,an as STATIC_CATEGORIES,Nx as SearchEventsButton,Ps as SearchHistoryUI,Ns as SearchHistoryWidget,Ms as SearchInputUI,Es as SearchResultItemUI,Rs as SearchResultListWidget,Os as SearchWidget,es as SellFormUI,Io as SellFormWidget,O0 as SetupModal,Ql as SimilarEventCard,bs as SimilarEventsSection,jx as SourceBadge,Hb as SpreadIndicator,cs as TradeFormSkeleton,Li as TradeFormUI,Co as TradeFormWidget,ss as UserActivitySection,Pi as computeMaxBuyAmount,bn as countActiveFilters,uo as createPredictSearchHistoryStorage,Mr as createTradeResultToast,Ni as estimatePolymarketBuyFee,Mi as estimatePolymarketSellFee,wi as fireCelebration,be as floorToDecimals,oo as formatKMB,Nr as formatShares,Or as getSourceMeta,fv as orderIntentView,Mo as parsePolymarketError,ua as polymarketFeeFactor,Po as resolveExpiration,Si as resolvePolymarketDisplayFeeRateBps,No as roundToTickSize,$h as useEventDetail,Di as useEventsInfinite,Ss as usePredictSearchHistory,cr as usePredictWallet,Cs as useSearchResultListScript,Ex as useSearchScript,Xi as useSellForm,Ci as useTradeForm};//# sourceMappingURL=index.mjs.map
137
137
  //# sourceMappingURL=index.mjs.map