// stock-detail.jsx — 3 mobile variants of the Stock Detail screen + 1 desktop // ╔══════════════════════════════════════════════════════════════╗ // ║ VARIANT A — Community-Hero ║ // ║ Sentiment bar massive; price + chart secondary. ║ // ║ Sharewise USP front-and-center. ║ // ╚══════════════════════════════════════════════════════════════╝ function StockDetailA({ dark }) { const t = useTheme(dark); return (
{/* Top bar — minimal: back + ticker + kebab */}
{Icon.back(t.text, 22)}
Amazon.com
AMZN · NASDAQ
{ActIcon.more(t.text, 20)}
{/* Price */}
€227.35
−€3.45 {Icon.arrowDown(t.down, 10)}1.50% Today · 17:32 CET
{/* ──────── COMMUNITY HERO ──────── */}
{/* glow */}
Community Verdict
97% Buy
from 232 investors in the last 30 days
214 Buy 12 Hold 6 Sell
{/* Inline Predict CTAs — lives inside the community card, where it belongs */}
{Icon.arrowUp('#fff', 13)}Predict Buy
{Icon.arrowDown(t.text, 13)}Predict Sell
{/* Target price callout */}
Target
€253.48
+11.28% upside
Confidence
8.4/10
Top 5% of all stocks
{/* Mini chart */}
Price · 1Y
{['1D','1W','1M','1Y','MAX'].map((p, i) => ( {p} ))}
p.i >= 35)} markerSize={4.5} upColor={t.up} downColor={t.down} bgColor={t.surface} />
{/* Top contributors */}
Top predictors on AMZN See all →
{[ { name: 'PapaSmurf', accuracy: '78%', tp: 268, pos: 'Buy', up: true, badge: '🏆' }, { name: 'fenjal', accuracy: '71%', tp: 255, pos: 'Buy', up: true }, { name: 'Melius', accuracy: '71%', tp: 248, pos: 'Buy', up: true }, ].map((u, i) => (
0 ? `0.5px solid ${t.border}` : 'none' }}>
{u.name} {u.badge && {u.badge}}
{u.accuracy} accuracy · 4y track
BUY
€{u.tp}
))}
{/* Pro & Kontra split card */}
{/* No floating bar — actions live in header (⋯) + inside the community card */}
); } // ╔══════════════════════════════════════════════════════════════╗ // ║ VARIANT B — Chart-Hero with Sentiment Band ║ // ║ Robinhood-style: chart dominates, sentiment fused under it. ║ // ╚══════════════════════════════════════════════════════════════╝ function StockDetailB({ dark }) { const t = useTheme(dark); return (
{Icon.back(t.text, 22)} AMZN
{ActIcon.more(t.text, 20)}
{/* Hero name + price */}
Amazon.com Inc.
€227.35
−€3.45 (1.50%) Today
{/* Big chart */}
{/* X-axis labels */}
JUNSEPDECMARMAY
{/* time tabs */}
{['1D','1W','1M','3M','1Y','MAX'].map((p, i) => (
{p}
))}
{/* Sentiment band — FUSED, full-width */}
{/* sentiment header strip */}
{/* donut */}
97%
Crowd says Buy
232 predictions · Target €253.48
+11.3%
{/* avatar stack */}
{['PapaSmurf','fenjal','Melius','djuddi','Alex'].map((n, i) => (
))}
PapaSmurf and 213 others predict a rise
{/* Inline Predict CTAs inside the sentiment band */}
{Icon.arrowUp(t.up, 14)}Predict Buy
{Icon.arrowDown(t.textMuted, 14)}Predict Sell
{/* Metrics row */}
{[ { l: 'Mkt Cap', v: '€2.41T' }, { l: 'P/E', v: '38.2' }, { l: 'Div Yield', v: '0.00%' }, { l: 'Day High', v: '€228.50' }, { l: 'Day Low', v: '€224.45' }, { l: '52W High', v: '€242.10' }, ].map(m => (
{m.l}
{m.v}
))}
{/* About */}
About Amazon
Amazon.com is one of the world's largest online retailers and cloud-computing providers. Founded 1994 by Jeff Bezos. Read more
{/* No floating bar — actions in header (⋯) + Predict CTAs in the sentiment band */}
); } // ╔══════════════════════════════════════════════════════════════╗ // ║ VARIANT C — Social Feed ║ // ║ Each prediction is a card with rationale, like Public.com. ║ // ╚══════════════════════════════════════════════════════════════╝ function StockDetailC({ dark }) { const t = useTheme(dark); return (
{Icon.back(t.text, 22)}
Amazon.com
AMZN
{ActIcon.more(t.text, 20)}
{/* Compact price + sparkline */}
€227.35
−€3.45 · 1.50%
{/* Segmented switch — Posts = predictions + discussions merged */}
{[ { label: 'Posts', count: 232, active: true }, { label: 'News', count: 48 }, { label: 'About' }, ].map((s, i) => (
{s.label} {s.count && {s.count}}
))}
Top
{/* Filter chips for Posts */}
{['All', 'With prediction', 'Buy only', 'Sell only', 'Top predictors'].map((f, i) => ( {f} ))}
{/* Compose strip — like a tweet composer, with optional prediction attach */}
Share your view on AMZN…
{Icon.plus(t.bg, 11)}Predict
{/* Posts feed — top-level only. Replies live inside the thread view. */}
{POSTS.filter(p => !p.replyTo).map((p, i) => ( ))}
{/* No floating bar */}
); } // ───────────────────────── Shared Desktop top nav ───────────────────────── // Used by all three Desktop variants so the chrome is consistent. function DesktopTopNav({ t, dark, active = 'Markets' }) { return (
{['Markets','Community','News','Academy','Club'].map((n) => ( {n} ))}
{Icon.search(t.textDim, 14)} Search stocks, predictors… ⌘K
{Icon.bell(t.textMuted, 18)}
); } // Reusable price header (ticker + name + price + change + actions) function DesktopPriceHeader({ t, showActions = true }) { return (
Amazon.com, Inc.
AMZN · NASDAQ · Diversified Retail · Large Cap
{showActions && (
+ Watchlist
Trade
)}
€227.35 {Icon.arrowDown(t.down, 11)}1.50% −€3.45 Tradegate · 15:05:26 CET
); } // ╔══════════════════════════════════════════════════════════════╗ // ║ DESKTOP A — Community-Hero ║ // ║ Massive Community Verdict block left, predictions in side. ║ // ║ Desktop translation of mobile Variant A. ║ // ╚══════════════════════════════════════════════════════════════╝ function StockDetailDesktopA({ dark }) { const t = useTheme(dark); return (
{/* Left column */}
{/* Header card — price recap, no chart hero */} {/* COMMUNITY VERDICT — the hero on Variant A */} {/* glow */}
Community Verdict letzte 30 Tage
97% Buy
aus 232 Einschätzungen · Kursziel €253.48 (+11.3%)
{[ { n: 214, label: 'Buy', color: t.up }, { n: 12, label: 'Hold', color: t.textMuted }, { n: 6, label: 'Sell', color: t.down }, ].map(s => (
{s.n}
{s.label}
))}
{/* Predict CTAs inside the hero */}
{Icon.arrowUp('#fff', 14)}Predict Buy
{Icon.arrowDown(t.text, 14)}Predict Sell
{/* Chart — secondary on Variant A */}
Kursverlauf · 2 Jahre
{['1D','1W','1M','3M','6M','1Y','2Y','5Y','MAX'].map((p, i) => ( {p} ))}
{/* Pro/Kontra — also a hero on Variant A */}
{/* Right column */}
{/* Top predictors compact */}
Top Predictors auf AMZN
nach Trefferrate
{[ { name: 'PapaSmurf', acc: 78.2, dir: 'Buy', tp: 268, badge: '🏆' }, { name: 'djuddi888', acc: 72.2, dir: 'Buy', tp: 261 }, { name: 'fenjal', acc: 71.6, dir: 'Buy', tp: 255 }, { name: 'Melius', acc: 71.4, dir: 'Buy', tp: 248 }, { name: 'DerAlmanach', acc: 68.9, dir: 'Buy', tp: 244 }, ].map((u, i) => { const up = u.dir === 'Buy'; return (
0 ? `0.5px solid ${t.border}` : 'none', }}>
{u.name} {u.badge && {u.badge}}
{u.acc}% Trefferrate
BUY
€{u.tp}
); })}
{/* Issue prediction widget */}
Deine Einschätzung
↑ Buy
↓ Sell
KURSZIEL
€253.48 +11.28%
Einschätzung abgeben
); } // Keep the old function name as alias for backward compatibility. const StockDetailDesktop = StockDetailDesktopA; // ╔══════════════════════════════════════════════════════════════╗ // ║ DESKTOP B — Chart-Hero (Robinhood-like) ║ // ║ Huge full-width chart, sentiment fused underneath. ║ // ║ Desktop translation of mobile Variant B. ║ // ╚══════════════════════════════════════════════════════════════╝ function StockDetailDesktopB({ dark }) { const t = useTheme(dark); return (
{/* Hero — Big chart with floating price */} {/* Header strip inside the hero card */}
Amazon.com, Inc.
AMZN · NASDAQ · Diversified Retail
+ Watchlist
Trade
{/* Massive price */}
€227.35
−€3.45 (1.50%) Heute · Tradegate · 15:05 CET
{/* HUGE CHART */}
{/* Time tabs */}
{['1D','1W','1M','3M','6M','1Y','2Y','5Y','MAX'].map((p, i) => ( {p} ))}
{/* Sentiment band — fused, full width */}
{/* Donut */}
97%
Crowd sagt Buy
232 Einschätzungen · Kursziel €253.48 (+11.3%)
{['PapaSmurf','fenjal','Melius','djuddi','Alex','DerAl'].map((n, i) => (
))}
PapaSmurf und 213 andere erwarten einen Anstieg
{/* Predict CTAs */}
{Icon.arrowUp('#fff', 13)}Predict Buy
{Icon.arrowDown(t.text, 13)}Predict Sell
{/* Metrics grid */}
{[ { l: 'Mkt Cap', v: '€2.41T' }, { l: 'P/E', v: '38.2' }, { l: 'Div Yield', v: '0.00%' }, { l: 'Day High', v: '€228.50' }, { l: 'Day Low', v: '€224.45' }, { l: '52W High', v: '€242.10' }, ].map(m => (
{m.l}
{m.v}
))}
{/* About Amazon */}
Über Amazon
Amazon.com Inc. ist eines der weltweit größten Online-Handels- und Cloud-Computing-Unternehmen. Gegründet 1994 von Jeff Bezos in Seattle. Das Unternehmen betreibt den größten Online-Marktplatz der westlichen Welt sowie Amazon Web Services (AWS) als Cloud-Sparte mit hohen Margen. Mehr erfahren
); } // ╔══════════════════════════════════════════════════════════════╗ // ║ DESKTOP C — Posts-Feed (Twitter / Public.com) ║ // ║ Feed dominates main column; stock context lives in sidebar. ║ // ║ Desktop translation of mobile Variant C. ║ // ╚══════════════════════════════════════════════════════════════╝ function StockDetailDesktopC({ dark }) { const t = useTheme(dark); return (
{/* Slim sticky stock-header strip — keeps ticker context while scrolling */}
Amazon.com, Inc.
AMZN · NASDAQ
€227.35 −1.50%
+ Watchlist
Trade
{/* Tabs row */}
{[ { l: 'Posts', count: 232, active: true }, { l: 'News', count: 48 }, { l: 'Financials' }, { l: 'About' }, ].map((tab, i) => (
{tab.l} {tab.count && {tab.count}}
))}
{/* Main column — feed */}
{/* Filter chips */}
{['Alle', 'Mit Einschätzung', 'Nur Buy', 'Nur Sell', 'Top Predictors'].map((f, i) => ( {f} ))}
Sortierung: Top
{/* Compose strip */}
Was meinst du zu AMZN?
+ Einschätzung anhängen Posten
{/* Posts feed — reuse mobile PostCard */}
{POSTS.filter(p => !p.replyTo).map((p, i) => ( ))}
{/* Sidebar — stock at a glance */}
{/* Mini chart card */}
Kursverlauf · 1J
i % 2 === 0)} markerSize={4.5} upColor={t.up} downColor={t.down} bgColor={t.surface} />
{['1D','1W','1M','3M','1Y','MAX'].map((p, i) => ( {p} ))}
{/* Sentiment pill compact */}
97% Buy n = 232
Einschätzung abgeben
{/* Top 3 predictors */}
Top Predictors
auf AMZN
{[ { name: 'PapaSmurf', acc: 78.2, badge: '🏆' }, { name: 'djuddi888', acc: 72.2 }, { name: 'fenjal', acc: 71.6 }, ].map((u, i) => (
0 ? `0.5px solid ${t.border}` : 'none', }}>
{u.name} {u.badge && {u.badge}}
{u.acc}% Trefferrate
))}
{/* Key metrics compact */}
Kennzahlen
{[ { l: 'Marktkapitalisierung', v: '€2.41T' }, { l: 'KGV', v: '38.2' }, { l: 'Dividendenrendite', v: '0.00%' }, { l: '52W Hoch', v: '€242.10' }, ].map((m, i) => (
0 ? `0.5px solid ${t.border}` : 'none', }}> {m.l} {m.v}
))}
); } // ╔══════════════════════════════════════════════════════════════╗ // ║ Legacy alias — earlier monolithic Desktop layout. Kept under║ // ║ this name only so old code paths don't error if they import ║ // ║ it. NOT referenced in the preview. Safe to delete once no ║ // ║ external caller uses it. ║ // ╚══════════════════════════════════════════════════════════════╝ function _StockDetailDesktopLegacyUnused({ dark }) { const t = useTheme(dark); return (
{/* Top nav */}
{['Markets','Community','News','Academy','Club'].map((n, i) => ( {n} ))}
{Icon.search(t.textDim, 14)} Search stocks, predictors… ⌘K
{Icon.bell(t.textMuted, 18)}
{/* Left column */}
{/* Hero card */}
Amazon.com, Inc.
AMZN · NASDAQ · Diversified Retail · Large Cap
+ Watchlist
Trade
€227.35 {Icon.arrowDown(t.down, 11)}1.50% −€3.45 Tradegate · 15:05:26 CET
{/* Big chart */}
JUL'24OCT'24JAN'25APR'25JUL'25OCT'25JAN'26APR'26
{['1D','1W','1M','3M','6M','1Y','2Y','5Y','MAX'].map((p, i) => ( {p} ))}
{/* Tabs */}
{['Posts','Financials','News','About'].map((s, i) => (
{s}{i === 0 && 232}
))}
{/* Top predictors table */}
Top predictors
Members with the best track record on AMZN
{['1W','1M','3M','1Y','ALL'].map((p, i) => ( {p} ))}
#PredictorAccuracyPositionTargetΔFollow
{[ { n: 1, name: 'PapaSmurf', acc: 78.2, dir: 'Buy', tp: 268, badge: '🏆' }, { n: 2, name: 'fenjal', acc: 71.6, dir: 'Buy', tp: 255 }, { n: 3, name: 'Melius', acc: 71.4, dir: 'Buy', tp: 248 }, { n: 4, name: 'djuddi888', acc: 72.2, dir: 'Buy', tp: 261 }, { n: 5, name: 'DerAlmanach', acc: 68.9, dir: 'Buy', tp: 244 }, { n: 6, name: 'WatchMen', acc: 65.1, dir: 'Hold', tp: 230 }, { n: 7, name: 'Bankster', acc: 64.0, dir: 'Sell', tp: 195 }, ].map(u => { const up = u.dir === 'Buy', dn = u.dir === 'Sell'; const c = up ? t.up : dn ? t.down : t.textMuted; const delta = ((u.tp - 227.35) / 227.35 * 100).toFixed(1); return (
{u.n} {u.name} {u.badge && {u.badge}} {u.acc}% {u.dir.toUpperCase()} €{u.tp} {delta > 0 ? '+' : ''}{delta}%
); })}
{/* Right column — prediction widget + crowd insights */}
{/* Issue prediction */}
Your prediction
↑ Buy
↓ Sell
TARGET PRICE
€253.48 +11.28%
CONFIDENCE 8/10
Issue prediction
{/* Crowd verdict */}
Crowd verdict
97% Buy n = 232
214 Buy 12 Hold 6 Sell
{/* Pro & Kontra */}
); } Object.assign(window, { StockDetailA, StockDetailB, StockDetailC, StockDetailDesktop, StockDetailDesktopA, StockDetailDesktopB, StockDetailDesktopC, MoreActionsSheet, }); // ╔══════════════════════════════════════════════════════════════╗ // ║ MORE ACTIONS SHEET — mobile equivalent of the desktop modal ║ // ║ All secondary actions surfaced in a clean bottom-sheet. ║ // ╚══════════════════════════════════════════════════════════════╝ function MoreActionsSheet({ dark }) { const t = useTheme(dark); const rowStyle = { display: 'flex', alignItems: 'center', gap: 14, padding: '14px 16px', borderTop: `0.5px solid ${t.border}`, fontFamily: SW_FONT, }; const iconCircle = (color, icon) => (
{icon}
); const SocialIcon = ({ kind, c }) => { const sz = 16; const props = { width: sz, height: sz, viewBox: '0 0 24 24', fill: c }; if (kind === 'fb') return ; if (kind === 'x') return ; if (kind === 'wa') return ; if (kind === 'li') return ; if (kind === 'mail') return ; return null; }; return (
{/* Backdrop: stock detail blurred */}
{Icon.back(t.text, 22)}
Amazon.com
AMZN
€227.35
{/* Dimmer */}
{/* Bottom sheet */}
{/* drag handle */}
{/* Ticker recap header */}
Amazon.com Inc.
AMZN · €227.35 · −1.50%
×
{/* Primary actions row — quick grid */}
{[ { label: 'Trade', sub: 'Musterdepot', icon: ActIcon.trade(t.bg, 18), bg: t.text, fg: t.bg, primary: true }, { label: 'Predict', icon: ActIcon.predict(t.text, 18), bg: t.bgSubtle, fg: t.text }, { label: 'Watchlist', icon: ActIcon.watch(t.text, 18), bg: t.bgSubtle, fg: t.text }, { label: 'Alert', icon: ActIcon.alert(t.text, 18), bg: t.bgSubtle, fg: t.text }, ].map(a => (
{a.icon} {a.label} {a.sub && {a.sub}}
))}
{/* Section: Pages */}
Sections
{[ { label: 'Posts · Predictions & Discussions', icon: '💬', clr: '#10B981', meta: '232' }, { label: 'Financials & Earnings', icon: '📈', clr: '#A855F7' }, { label: 'News', icon: '📰', clr: '#3B82F6', meta: '48' }, ].map((r, i) => (
{iconCircle(r.clr, typeof r.icon === 'string' ? {r.icon} : r.icon)} {r.label} {r.meta && {r.meta}} {Icon.chevR(t.textDim, 14)}
))}
{/* Section: External links */}
Open externally
{[ { label: 'Flatex · Real trade', clr: '#2563EB', mark: 'F' }, { label: 'Yahoo Finance', clr: '#7B1FA2', mark: 'Y!' }, { label: 'Google News', clr: '#4285F4', mark: 'G' }, ].map((r, i) => (
{r.mark}
{r.label} {ActIcon.external(t.textDim, 14)}
))}
{/* Section: Share */}
Share
{[ { kind: 'fb', clr: '#1877F2' }, { kind: 'x', clr: t.text }, { kind: 'wa', clr: '#25D366' }, { kind: 'li', clr: '#0A66C2' }, { kind: 'mail', clr: t.textMuted }, ].map(s => (
))}
); }