1import{j as e,S as f,aX as W,aY as Z,a as g,i as v,k as w,m as Q,V as K,Q as Y,r as _,A as G,d as X,w as ee,I as se,B as N,ad as y,o as V,ac as te,a5 as ae,U as re,E as le,u as ne,aq as ie,ar as oe}from"./index-Bd0Su9Yd.js";import{S as de}from"./StockChart-CKLgPLz5.js";import{u as ce,a as xe,b as me}from"./finnhub-extras-DQDHrcjw.js";import{M as z}from"./minus-BcOKa_g1.js";import{T as ue}from"./TickerNews-DhVkt_bK.js";import{B as J}from"./badge-BJzxCn3H.js";import{D as ge}from"./dollar-sign-CxWfSwKf.js";import{I as he}from"./info-DeYX3SEk.js";import{C as pe}from"./calendar-K_BnhBKi.js";function fe({rec:t}){const r=t.strongBuy+t.buy+t.hold+t.sell+t.strongSell;if(r===0)return null;const o=[{value:t.strongBuy,color:"bg-gain",label:"Strong Buy"},{value:t.buy,color:"bg-gain/60",label:"Buy"},{value:t.hold,color:"bg-warning",label:"Hold"},{value:t.sell,color:"bg-loss/60",label:"Sell"},{value:t.strongSell,color:"bg-loss",label:"Strong Sell"}];return e.jsxs("div",{className:"space-y-1",children:[e.jsxs("div",{className:"flex items-center justify-between text-[10px] text-muted-foreground",children:[e.jsx("span",{children:t.period.slice(0,7)}),e.jsxs("span",{children:[r," analysts"]})]}),e.jsx("div",{className:"flex h-3 rounded-full overflow-hidden gap-px",children:o.map(i=>i.value>0?e.jsx("div",{className:g("h-full transition-all",i.color),style:{width:`${i.value/r*100}%`},title:`${i.label}: ${i.value}`},i.label):null)})]})}function be({symbol:t}){var s;const{data:r,isLoading:o}=ce(t);if(o)return e.jsx(f,{className:"h-32 w-full rounded-lg"});if(!((s=r==null?void 0:r.recommendations)!=null&&s.length))return null;const i=r.recommendations[0];i.strongBuy+i.buy+i.hold+i.sell+i.strongSell;const h=i.strongBuy+i.buy,c=i.sell+i.strongSell,u=h>c?"bullish":c>h?"bearish":"neutral";return e.jsxs("div",{className:"rounded-lg border border-border bg-card p-4",children:[e.jsxs("div",{className:"flex items-center justify-between mb-3",children:[e.jsxs("h2",{className:"text-sm font-semibold text-card-foreground flex items-center gap-2",children:[u==="bullish"?e.jsx(W,{className:"h-4 w-4 text-gain"}):u==="bearish"?e.jsx(Z,{className:"h-4 w-4 text-loss"}):e.jsx(z,{className:"h-4 w-4 text-warning"}),"Analyst Recommendations"]}),e.jsxs("span",{className:g("text-xs font-bold px-2 py-0.5 rounded-full",u==="bullish"&&"bg-gain/15 text-gain",u==="bearish"&&"bg-loss/15 text-loss",u==="neutral"&&"bg-warning/15 text-warning"),children:[h," Buy · ",i.hold," Hold · ",c," Sell"]})]}),e.jsx("div",{className:"grid grid-cols-5 gap-2 mb-4",children:[{label:"Strong Buy",value:i.strongBuy,color:"text-gain"},{label:"Buy",value:i.buy,color:"text-gain/80"},{label:"Hold",value:i.hold,color:"text-warning"},{label:"Sell",value:i.sell,color:"text-loss/80"},{label:"Strong Sell",value:i.strongSell,color:"text-loss"}].map(m=>e.jsxs("div",{className:"text-center",children:[e.jsx("p",{className:g("text-lg font-bold font-mono",m.color),children:m.value}),e.jsx("p",{className:"text-[9px] text-muted-foreground",children:m.label})]},m.label))}),e.jsxs("div",{className:"space-y-2",children:[e.jsxs("p",{className:"text-[10px] text-muted-foreground font-medium",children:["Trend (last ",Math.min(r.recommendations.length,6)," months)"]}),r.recommendations.slice(0,6).map((m,l)=>e.jsx(fe,{rec:m},l))]})]})}const je=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function Ne({symbol:t}){var u;const{data:r,isLoading:o}=xe(t);if(o)return e.jsx(f,{className:"h-32 w-full rounded-lg"});if(!((u=r==null?void 0:r.monthly)!=null&&u.length))return null;const i=r.signal==="bullish"?v:r.signal==="bearish"?w:z,h=r.signal==="bullish"?"text-gain":r.signal==="bearish"?"text-loss":"text-warning",c=Math.max(...r.monthly.map(s=>Math.abs(s.mspr)),1);return e.jsxs("div",{className:"rounded-lg border border-border bg-card p-4",children:[e.jsxs("div",{className:"flex items-center justify-between mb-3",children:[e.jsxs("h2",{className:"text-sm font-semibold text-card-foreground flex items-center gap-2",children:[e.jsx(Q,{className:"h-4 w-4 text-primary"}),"Insider Sentiment (MSPR)"]}),e.jsxs("div",{className:g("flex items-center gap-1 text-xs font-bold",h),children:[e.jsx(i,{className:"h-3.5 w-3.5"}),r.signal.charAt(0).toUpperCase()+r.signal.slice(1)]})]}),e.jsx("p",{className:"text-[10px] text-muted-foreground mb-3",children:"Monthly Share Purchase Ratio â positive = net insider buying, negative = net selling."}),e.jsx("div",{className:"flex items-end gap-2 h-20",children:r.monthly.map((s,m)=>{const l=Math.abs(s.mspr)/c,n=s.mspr>=0;return e.jsxs("div",{className:"flex flex-col items-center flex-1 gap-1",children:[e.jsx("div",{className:"relative w-full flex flex-col items-center justify-end h-16",children:e.jsx("div",{className:g("w-full rounded-t-sm transition-all",n?"bg-gain":"bg-loss"),style:{height:`${Math.max(l*100,4)}%`},title:`MSPR: ${s.mspr.toFixed(2)}`})}),e.jsx("span",{className:"text-[8px] text-muted-foreground",children:je[s.month-1]})]},m)})}),e.jsxs("div",{className:"mt-3 pt-2 border-t border-border/30 flex items-center justify-between text-[10px] text-muted-foreground",children:[e.jsxs("span",{children:["Aggregate MSPR: ",e.jsx("strong",{className:g(r.aggregateMspr>=0?"text-gain":"text-loss"),children:r.aggregateMspr.toFixed(2)})]}),e.jsxs("span",{children:["Net change: ",e.jsxs("strong",{className:g(r.aggregateChange>=0?"text-gain":"text-loss"),children:[r.aggregateChange>=0?"+":"",r.aggregateChange]})," shares"]})]})]})}function U(t){return t==null?"â":Math.abs(t)>=1e12?`$${(t/1e12).toFixed(2)}T`:Math.abs(t)>=1e9?`$${(t/1e9).toFixed(2)}B`:Math.abs(t)>=1e6?`$${(t/1e6).toFixed(1)}M`:Math.abs(t)>=1e3?`$${(t/1e3).toFixed(0)}K`:t.toFixed(2)}function j(t){return t==null?"â":t>=1e9?`${(t/1e9).toFixed(1)}B`:t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(0)}K`:String(t)}function ye(t){return ne({queryKey:["stock-profile",t],queryFn:async()=>{const r=`https://uhtyttyhjszpnmktwget.supabase.co/functions/v1/stock-profile?symbol=${t}`,o=await fetch(r,{headers:{apikey:"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InVodHl0dHloanN6cG5ta3R3Z2V0Iiwicm9sZSI6ImFub24iLCJpYXQiOjE3NzIyODUzODAsImV4cCI6MjA4Nzg2MTM4MH0.yZkoSl7I8ZDnHuhMSV0JjT3LbSG81-u0
1Ma3tZsJ4v5M"}});if(!o.ok)throw new Error("Failed to fetch stock data");return o.json()},enabled:t.length>=1,staleTime:2*6e4,refetchInterval:2*6e4})}function x({label:t,value:r}){return e.jsxs("div",{className:"flex items-center justify-between py-1.5 border-b border-border/30 last:border-0",children:[e.jsx("span",{className:"text-xs text-muted-foreground",children:t}),e.jsx("span",{className:"text-xs font-mono font-medium text-card-foreground",children:r??"â"})]})}function ve({symbol:t}){var u;const{data:r,isLoading:o}=me(t);if(o)return e.jsx(f,{className:"h-40 w-full rounded-lg"});if(!((u=r==null?void 0:r.earnings)!=null&&u.length))return null;const i=[...r.earnings].sort((s,m)=>m.date.localeCompare(s.date)),h=i.filter(s=>s.epsActual==null),c=i.filter(s=>s.epsActual!=null).slice(0,8);return e.jsxs("div",{className:"rounded-lg border border-border bg-card p-4",children:[e.jsxs("h2",{className:"mb-3 text-sm font-semibold text-card-foreground flex items-center gap-2",children:[e.jsx(pe,{className:"h-4 w-4 text-primary"})," Earnings History"]}),h.length>0&&e.jsxs("div",{className:"mb-3 rounded-md bg-primary/5 border border-primary/20 p-3",children:[e.jsx("p",{className:"text-xs font-medium text-primary mb-1",children:"Upcoming Earnings"}),h.slice(0,2).map((s,m)=>e.jsxs("div",{className:"flex items-center justify-between text-xs py-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs("span",{className:"font-mono font-medium text-card-foreground",children:["Q",s.quarter," ",s.year]}),e.jsx("span",{className:"text-muted-foreground",children:new Date(s.date+"T12:00:00").toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})}),s.hour==="bmo"&&e.jsx("span",{title:"Before Market Open",children:e.jsx(ie,{className:"h-3 w-3 text-warning"})}),s.hour==="amc"&&e.jsx("span",{title:"After Market Close",children:e.jsx(oe,{className:"h-3 w-3 text-primary"})})]}),s.epsEstimate!=null&&e.jsxs("span",{className:"text-muted-foreground font-mono",children:["Est: $",s.epsEstimate.toFixed(2)]})]},m))]}),c.length>0&&e.jsxs("div",{className:"space-y-0",children:[e.jsxs("div",{className:"grid grid-cols-5 gap-2 text-[10px] font-medium text-muted-foreground uppercase tracking-wider pb-1.5 border-b border-border/50",children:[e.jsx("span",{children:"Quarter"}),e.jsx("span",{children:"Date"}),e.jsx("span",{className:"text-right",children:"Estimate"}),e.jsx("span",{className:"text-right",children:"Actual"}),e.jsx("span",{className:"text-right",children:"Surprise"})]}),c.map((s,m)=>{const l=s.epsActual!=null&&s.epsEstimate!=null&&s.epsActual>s.epsEstimate,n=s.epsActual!=null&&s.epsEstimate!=null&&s.epsActual<s.epsEstimate,d=s.epsActual!=null&&s.epsEstimate!=null&&s.epsEstimate!==0?((s.epsActual-s.epsEstimate)/Math.abs(s.epsEstimate)*100).toFixed(1):null;return e.jsxs("div",{className:"grid grid-cols-5 gap-2 py-1.5 border-b border-border/30 last:border-0 text-xs",children:[e.jsxs("span",{className:"font-mono font-medium text-card-foreground",children:["Q",s.quarter," ",s.year]}),e.jsx("span",{className:"text-muted-foreground",children:new Date(s.date+"T12:00:00").toLocaleDateString("en-US",{month:"short",day:"numeric"})}),e.jsx("span",{className:"text-right font-mono text-muted-foreground",children:s.epsEstimate!=null?`$${s.epsEstimate.toFixed(2)}`:"â"}),e.jsx("span",{className:g("text-right font-mono font-bold",l?"text-gain":n?"text-loss":"text-card-foreground"),children:s.epsActual!=null?`$${s.epsActual.toFixed(2)}`:"â"}),e.jsx("span",{className:g("text-right font-mono",l?"text-gain":n?"text-loss":"text-muted-foreground"),children:d!=null?e.jsxs("span",{className:"flex items-center justify-end gap-0.5",children:[l?e.jsx(v,{className:"h-3 w-3"}):n?e.jsx(w,{className:"h-3 w-3"}):null,l?"+":"",d,"%"]}):"â"})]},m)})]})]})}function Te(){var F,$,M,k,E,C,A,T,I,P,B,L,R,D,O,H;const{symbol:t}=K(),r=Y(),o=(t||"").toUpperCase(),[i,h]=_.useState(""),{data:c,isLoading:u,error:s}=ye(o),m=()=>{const p=i.trim().toUpperCase();p&&r(`/stocks/${p}`)},l=c==null?void 0:c.quote,n=c==null?void 0:c.profile,d=c==null?void 0:c.financials,a=c==null?void 0:c.stats,b=((l==null?void 0:l.changePercent)??0)>=0,S=l?{"@context":"https://schema.org","@type":"FinancialProduct",name:`${l.name} (${o}
1)`,description:(n==null?void 0:n.description)||`Stock information for ${o}`,url:`https://lemonjuicelabs.ai/stocks/${o}`}:null;return e.jsxs(G,{children:[e.jsx(X,{title:l?`${l.name} (${o}) Stock Price & Analysis`:`${o} Stock | LemonJuiceLabs`,description:l?`${l.name} (${o}) stock at $${(F=l.price)==null?void 0:F.toFixed(2)}. View live chart, financials, analyst targets, and expert analysis.`:`View live stock data, charts, and analysis for ${o}.`}),S&&e.jsx("script",{type:"application/ld+json",dangerouslySetInnerHTML:{__html:JSON.stringify(S)}}),e.jsxs("div",{className:"mx-auto max-w-7xl space-y-6 p-4 md:p-6",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsxs("div",{className:"relative flex-1 max-w-sm",children:[e.jsx(ee,{className:"absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground"}),e.jsx(se,{value:i,onChange:p=>h(p.target.value.toUpperCase()),onKeyDown:p=>p.key==="Enter"&&m(),placeholder:"Search ticker (e.g. AAPL, MSFT)",className:"pl-9 bg-card border-border"})]}),e.jsx(N,{onClick:m,size:"sm",variant:"secondary",children:e.jsx(y,{className:"h-4 w-4"})})]}),u&&e.jsxs("div",{className:"space-y-4",children:[e.jsx(f,{className:"h-24 w-full rounded-lg"}),e.jsx(f,{className:"h-[400px] w-full rounded-lg"}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsx(f,{className:"h-60 rounded-lg"}),e.jsx(f,{className:"h-60 rounded-lg"})]})]}),s&&e.jsxs("div",{className:"rounded-lg border border-loss/30 bg-loss/10 p-6 text-center",children:[e.jsxs("p",{className:"text-loss font-medium",children:['Could not find data for "',o,'"']}),e.jsx("p",{className:"text-sm text-muted-foreground mt-1",children:"Try a different ticker symbol"})]}),l&&!u&&e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"rounded-lg border border-border bg-card p-5",children:[e.jsxs("div",{className:"flex flex-col sm:flex-row sm:items-center sm:justify-between gap-3",children:[e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h1",{className:"text-2xl font-bold text-foreground",children:l.name}),e.jsx(J,{variant:"secondary",className:"font-mono text-xs",children:o})]}),e.jsxs("div",{className:"flex items-center gap-2 mt-1 text-xs text-muted-foreground",children:[e.jsx("span",{children:l.exchange}),(n==null?void 0:n.sector)&&e.jsxs(e.Fragment,{children:[e.jsx("span",{children:"â¢"}),e.jsx("span",{children:n.sector})]}),(n==null?void 0:n.industry)&&e.jsxs(e.Fragment,{children:[e.jsx("span",{children:"â¢"}),e.jsx("span",{children:n.industry})]})]})]}),e.jsxs("div",{className:"text-right",children:[e.jsxs("p",{className:"text-3xl font-bold font-mono text-foreground",children:["$",($=l.price)==null?void 0:$.toFixed(2)]}),e.jsxs("div",{className:g("flex items-center justify-end gap-1 font-mono text-sm font-bold",b?"text-gain":"text-loss"),children:[b?e.jsx(v,{className:"h-4 w-4"}):e.jsx(w,{className:"h-4 w-4"}),e.jsxs("span",{children:[b?"+":"",(M=l.change)==null?void 0:M.toFixed(2)," (",b?"+":"",(k=l.changePercent)==null?void 0:k.toFixed(2),"%)"]})]})]})]}),e.jsx("div",{className:"mt-4 grid grid-cols-2 sm:grid-cols-4 lg:grid-cols-6 gap-3",children:[{label:"Market Cap",value:U(l.marketCap)},{label:"Volume",value:j(l.volume)},{label:"P/E Ratio",value:((E=a==null?void 0:a.peRatio)==null?void 0:E.toFixed(2))??"â"},{label:"EPS",value:((C=a==null?void 0:a.eps)==null?void 0:C.toFixed(2))??"â"},{label:"52W High",value:l.fiftyTwoWeekHigh?`$${l.fiftyTwoWeekHigh.toFixed(2)}`:"â"},{label:"52W Low",value:l.fiftyTwoWeekLow?`$${l.fiftyTwoWeekLow.toFixed(2)}`:"â"}].map(({label:p,value:q})=>e.jsxs("div",{className:"rounded-md bg-muted/30 p-2",children:[e.jsx("p",{className:"text-[10px] text-muted-foreground",children:p}),e.jsx("p",{className:"font-mono text-sm font-medium text-card-foreground",children:q})]},p))})]}),e.jsxs("div",{className:"rounded-lg border border-border bg-card p-4",children:[e.jsxs("h2",{className:"mb-3 text-sm font-semibold text-card-foreground flex items-center gap-2",children:[e.jsx(V,{className:"h-4 w-4 text-primary"})," Price Chart"]}),e.jsx(de,{symbol:o,height:420})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsxs("div",{className:"rounded-lg border border-border bg-card p-4",children:[e.jsxs("h2",{className:"mb-3 text-sm font-semibold text-card-foreground flex items-center gap-2",children:[e.jsx(ge,{className:"h-4 w-4 text-gain"})," Key Statistics"]}),e.jsx(x,{label:"Market Cap",value:U((a==null?void 0:a.marketCap)??l.marketCap)}),e.jsx(x,{label:"P/E (TTM)",value:(A=a==null?void 0:a.peRatio)==null?void 0:A.toFixed(2)}),e.jsx(x,{label:"Forward P/E",value:(T=a==null?void 0:a.forwardPE)==null?void 0:T.toFixed(2)}),e.jsx(x,{label:"EPS (TTM)",value:(I=a==null?void 0:a.eps)==null?void 0:I.toFixed(2)}),e.jsx(x,{label:"Dividend Yield",value:a==null?void 0:a.dividendYield}),e.jsx(x,{label:"Beta",value:(P=a==null?void 0:a.beta)==null?void 0:P.toFixed(2)}),e.jsx(x,{label:"Book Value",value:a!=null&&a.bookValue?`$${a.bookValue.toFixed(2)}`:null}),e.jsx(x,{label:"Price/Book",value:(B=a==null?void 0:a.priceToBook)==null?void 0:B.toFixed(2)}),e.jsx(x,{label:"Short Ratio",value:(L=a==null?void 0:a.shortRatio)==null?void 0:L.toFixed(2)}),e.jsx(x,{label:"Avg Volume",value:j(a==null?void 0:a.averageVolume)}),e.jsx(x,{label:"Shares Out",value:j(a==null?void 0:a.sharesOutstanding)}),e.jsx(x,{label:"Next Earnings",value:a==null?void 0:a.earningsDate})]}),e.jsxs("div",{className:"rounded-lg border border-border bg-card p-4",children:[e.jsxs("h2",{className:"mb-3 text-sm font-semibold text-card-foreground flex items-center gap-2",children:[e.jsx(V,{className:"h-4 w-4 text-warning"})," Financials"]}),d?e.jsxs(e.Fragment,{children:[e.jsx(x,{label:"Revenue",value:d.revenueFormatted?`$${d.revenueFormatted}`:null}),e.jsx(x,{label:"Operating Margin",value:d.operatingMargin}),e.jsx(x,{label:"Profit Margin",value:d.profitMargin}),e.jsx(x,{label:"ROE",value:d.returnOnEquity}),e.jsx(x,{label:"Debt/Equity",value:(R=d.debtToEquity)==null?void 0:R.toFixed(2)}),e.jsx(x,{label:"Free Cash Flow",value:d.freeCashflowFormatted?`$${d.freeCashflowFormatted}`:null}),d.numberOfAnalysts&&e.jsxs("div",{className:"mt-4 pt-3 border-t border-border",children:[e.jsxs("h3",{className:"text-xs font-medium text-muted-foreground mb-2 flex items-center gap-1",children:[e.jsx(te,{className:"h-3 w-3"})," Analyst Targets (",d.numberOfAnalysts," analysts)"]}),e.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[e.jsxs("div",{className:"rounded-md bg-loss/10 p-2 text-center",children:[e.jsx("p",{className:"text-[10px] text-muted-foreground",children:"Low"}),e.jsxs("p",{className:"font-mono text-sm font-bold text-loss",children:["$",((D=d.targetL
1owPrice)==null?void 0:D.toFixed(2))??"â"]})]}),e.jsxs("div",{className:"rounded-md bg-primary/10 p-2 text-center",children:[e.jsx("p",{className:"text-[10px] text-muted-foreground",children:"Mean"}),e.jsxs("p",{className:"font-mono text-sm font-bold text-primary",children:["$",((O=d.targetMeanPrice)==null?void 0:O.toFixed(2))??"â"]})]}),e.jsxs("div",{className:"rounded-md bg-gain/10 p-2 text-center",children:[e.jsx("p",{className:"text-[10px] text-muted-foreground",children:"High"}),e.jsxs("p",{className:"font-mono text-sm font-bold text-gain",children:["$",((H=d.targetHighPrice)==null?void 0:H.toFixed(2))??"â"]})]})]}),d.recommendation&&e.jsx("div",{className:"mt-2 text-center",children:e.jsx(J,{variant:"outline",className:g("text-xs font-mono",d.recommendation.includes("buy")&&"border-gain text-gain",d.recommendation.includes("sell")&&"border-loss text-loss",d.recommendation==="hold"&&"border-warning text-warning"),children:d.recommendation.toUpperCase().replace("_"," ")})})]})]}):e.jsx("p",{className:"text-xs text-muted-foreground",children:"Financial data not available for this security."})]})]}),e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-4",children:[e.jsx(be,{symbol:o}),e.jsx(Ne,{symbol:o})]}),e.jsx(ve,{symbol:o}),e.jsx(ue,{symbol:o}),n&&e.jsxs("div",{className:"rounded-lg border border-border bg-card p-4",children:[e.jsxs("h2",{className:"mb-3 text-sm font-semibold text-card-foreground flex items-center gap-2",children:[e.jsx(ae,{className:"h-4 w-4 text-primary"})," About ",l.name]}),n.description&&e.jsx("p",{className:"text-sm text-muted-foreground leading-relaxed mb-3",children:n.description}),e.jsxs("div",{className:"flex flex-wrap gap-3 text-xs text-muted-foreground",children:[n.sector&&e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(he,{className:"h-3 w-3"})," ",n.sector]}),n.industry&&e.jsxs("span",{children:["⢠",n.industry]}),n.employees&&e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(re,{className:"h-3 w-3"})," ",j(n.employees)," employees"]}),n.city&&n.country&&e.jsxs("span",{children:["⢠",n.city,", ",n.country]}),n.website&&e.jsxs("a",{href:n.website,target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1 text-primary hover:underline",children:[e.jsx(le,{className:"h-3 w-3"})," Website"]})]})]}),e.jsxs("div",{className:"rounded-lg border border-border bg-card p-4 flex flex-col sm:flex-row items-center justify-between gap-3",children:[e.jsxs("div",{children:[e.jsx("p",{className:"text-sm font-semibold text-card-foreground",children:"Want deeper analysis?"}),e.jsxs("p",{className:"text-xs text-muted-foreground",children:["Get institutional holdings, insider trades, and expert analysis for ",o,"."]})]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(N,{variant:"secondary",size:"sm",onClick:()=>r(`/trading-analysis?symbol=${o}`),children:["Analyze with AI ",e.jsx(y,{className:"h-3.5 w-3.5 ml-1"})]}),e.jsxs(N,{size:"sm",onClick:()=>r("/trading-analysis"),children:["Trading Analysis ",e.jsx(y,{className:"h-3.5 w-3.5 ml-1"})]})]})]})]})]})]})}export{Te as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.