-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathanalyzer-legacy.html
More file actions
104 lines (97 loc) · 20.7 KB
/
Copy pathanalyzer-legacy.html
File metadata and controls
104 lines (97 loc) · 20.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; script-src 'self' 'unsafe-inline' https://www.gstatic.com https://apis.google.com; style-src 'self' 'unsafe-inline'; img-src 'self' data: https:; connect-src 'self' https://*.firebaseio.com https://*.googleapis.com https://*.firebaseapp.com https://*.cloudfunctions.net https://identitytoolkit.googleapis.com https://securetoken.googleapis.com; frame-src https://*.firebaseapp.com https://accounts.google.com; object-src 'none'; base-uri 'self'; form-action 'self'; upgrade-insecure-requests"><meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="theme-color" content="#0a0711">
<title>PCDeal V11.5 — Used PC Deal Analyzer</title>
<style>
:root{--bg:#09070f;--panel:#12101b;--panel2:#171321;--line:#2b2338;--text:#f7f4ff;--muted:#aaa2b8;--accent:#9d6cff;--accent2:#6f4cff;--good:#62d995;--warn:#f2bd63;--bad:#f07982}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at 50% -10%,rgba(120,70,220,.2),transparent 38%),var(--bg);color:var(--text);min-height:100vh}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to bottom,black,transparent 80%)}
nav{position:sticky;top:0;z-index:20;background:rgba(9,7,15,.78);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.07)}
.nav-inner{max-width:1160px;margin:auto;padding:15px 20px;display:flex;align-items:center;justify-content:space-between}.logo{font-size:20px;font-weight:900}.logo span{color:var(--accent)}.navlinks{display:flex;gap:5px;overflow-x:auto;margin-left:14px}.navlinks a{color:#bdb4c8;text-decoration:none;font-size:12px;font-weight:800;padding:7px 9px;border-radius:9px;white-space:nowrap}.navlinks a:hover{background:#211a2d;color:#fff}.v3-pill{font-size:12px;font-weight:800;border:1px solid rgba(157,108,255,.4);background:rgba(157,108,255,.12);color:#cab7ff;padding:7px 10px;border-radius:999px}
.hero{max-width:900px;margin:0 auto;padding:72px 20px 35px;text-align:center}.hero h1{font-size:clamp(40px,7vw,72px);line-height:1;margin:0;letter-spacing:-.045em}.hero h1 span{background:linear-gradient(90deg,#bfa9ff,#845cff);-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{max-width:690px;margin:20px auto 0;color:var(--muted);font-size:18px;line-height:1.65}
.container{width:min(1080px,calc(100% - 28px));margin:0 auto 80px}.panel{background:linear-gradient(180deg,rgba(24,19,34,.95),rgba(15,12,23,.96));border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:0 22px 70px rgba(0,0,0,.3);margin:16px 0}.panel h2{margin:0 0 7px;font-size:22px}.sub{color:var(--muted);font-size:14px;line-height:1.55;margin-bottom:18px}
textarea,input,select{width:100%;background:#0c0a12;color:var(--text);border:1px solid #342b42;border-radius:12px;padding:13px 14px;font:inherit;outline:none;transition:.2s}textarea{min-height:190px;resize:vertical}textarea:focus,input:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(157,108,255,.12)}label{display:block;font-size:13px;font-weight:800;color:#d9d2e5;margin:0 0 7px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.field{min-width:0}
button{width:100%;border:0;border-radius:12px;padding:14px 17px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font:inherit;font-weight:850;cursor:pointer;transition:transform .16s,filter .16s}button:hover{filter:brightness(1.08);transform:translateY(-1px)}button:active{transform:translateY(0)}.secondary{background:#211a2d;border:1px solid #3b2e51}.actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}
#parseMessage{color:#c6bdd3;margin-top:14px;font-size:13px;line-height:1.6}.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.hardware-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.hardware-card{position:relative;overflow:hidden;background:#0e0b15;border:1px solid #2e263a;border-radius:16px;padding:14px;min-height:106px}.hardware-card .name{font-size:12px;color:var(--muted);font-weight:700}.hardware-icon{font-size:28px;display:block;margin-bottom:11px;transform:translateY(0) scale(1);filter:drop-shadow(0 0 0 rgba(157,108,255,0));transition:.4s}.hardware-icon.active{animation:iconPop .7s ease both;filter:drop-shadow(0 0 13px rgba(157,108,255,.65))}@keyframes iconPop{0%{transform:scale(.7);opacity:.4}55%{transform:scale(1.18)}100%{transform:scale(1);opacity:1}}
.result{display:none;margin-top:18px;border-top:1px solid var(--line);padding-top:20px}.score{font-size:48px;font-weight:950;letter-spacing:-.04em}.verdict{font-size:19px;font-weight:800;margin-top:4px}.resultText{color:#c0b8cb;line-height:1.7;margin-top:14px}.warning{background:#16111d;border:1px solid #332841;border-radius:13px;padding:15px;margin-top:18px;color:#c8bfd4;line-height:1.5}
.meter{margin-top:18px;background:#0c0a12;border:1px solid #2e263a;border-radius:14px;padding:14px}.meter-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:9px;font-size:13px}.meter-track,.confidence-track{height:9px;background:#241d2e;border-radius:999px;overflow:hidden}.meter-fill,.confidence-fill{height:100%;width:0;background:linear-gradient(90deg,#7e55e8,#b88cff);border-radius:inherit;transition:width .35s}.meter[data-state="good"] .meter-fill{background:linear-gradient(90deg,#49b87a,#77e0a3)}.meter[data-state="high"] .meter-fill{background:linear-gradient(90deg,#cf626d,#f09276)}
.insights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.insight{background:#0e0b15;border:1px solid #2e263a;border-radius:16px;padding:16px;min-height:130px}.insight h3{margin:0 0 8px;font-size:14px}.big{font-size:27px;font-weight:900}.tiny{font-size:12px;color:var(--muted);line-height:1.45;margin-top:7px}.dual{display:grid;grid-template-columns:1fr 1fr;gap:8px}.stat{background:#15101d;border-radius:10px;padding:10px}.stat span{display:block;color:var(--muted);font-size:11px;margin-bottom:3px}.stat strong{font-size:17px}.confidence-head{display:flex;justify-content:space-between;margin-bottom:9px}.rarity-row{display:flex;gap:8px;flex-wrap:wrap}.tag{font-size:11px;font-weight:850;background:#21192d;border:1px solid #3b2d4f;padding:6px 8px;border-radius:999px}.redflags ul{padding-left:18px;margin:9px 0 0}.redflags li{color:#c9c0d3;font-size:12px;line-height:1.45;margin:5px 0}.show{animation:rise .45s ease both}@keyframes rise{from{opacity:.2;transform:translateY(12px)}to{opacity:1;transform:none}}
footer{text-align:center;color:#716b79;padding:0 20px 50px;font-size:12px}
@media(max-width:800px){.hardware-grid{grid-template-columns:repeat(2,1fr)}.insights{grid-template-columns:1fr 1fr}.grid-3{grid-template-columns:1fr 1fr}.hero{padding-top:50px}}
@media(max-width:600px){.container{width:min(100% - 18px,1080px)}.panel{padding:17px;border-radius:18px}.grid,.grid-3,.insights,.actions{grid-template-columns:1fr}.hero h1{font-size:43px}.hero p{font-size:15px}.hardware-grid{grid-template-columns:1fr 1fr}.nav-inner{padding:12px 14px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
</style>
<link rel="stylesheet" href="styles.css?v=602">
<link rel="manifest" href="manifest.webmanifest"><link rel="icon" type="image/svg+xml" href="favicon.svg">
<link rel="shortcut icon" href="favicon.svg">
<link rel="manifest" href="manifest.webmanifest">
<script src="page-transitions.js" defer></script>
<script src="master-db-client-v10.js?v=1000" defer></script>
<link rel="stylesheet" href="site-v123.css?v=1230"></head>
<body>
<nav><div class="nav-inner"><div class="logo">PC<span>Deal</span></div><div class="navlinks"><a class="active" href="./" aria-current="page" onclick="return false;">Analyzer</a><a href="dashboard.html">Dashboard</a><a href="performance.html">Performance</a><a href="hardware.html">Hardware</a><a href="buying.html">Buying</a><a href="compare.html">Compare</a><a href="flip.html">Flip</a><a href="inspector.html">Inspector</a><a href="deals.html">My Deals</a><a href="tools.html">Tools</a><a href="retail.html">Retail</a><a href="data.html">Data Lab</a><a href="account.html">Account</a></div><div class="v3-pill">V11.5</div></div></nav>
<section class="hero"><h1>Know if a PC deal is <span>actually worth it.</span></h1><p>Paste a used-PC listing, detect the hardware, compare the asking price, estimate gaming performance, and spot seller red flags before you buy.</p></section>
<main class="container"><div data-pcdeal-catalog-status style="max-width:1200px;margin:10px auto;padding:8px 14px;opacity:.72;font-size:12px">Loading retail catalog…</div>
<section class="panel">
<h2>Paste a Listing</h2><div class="sub">Facebook Marketplace, Kijiji, Craigslist, or any other used-PC listing.</div>
<textarea id="listingText" placeholder="Example: Ryzen 7 5800X3D, RTX 3080 Ti, 32GB DDR4, 1TB NVMe, B550 Tomahawk, RM850x. Asking $950 CAD."></textarea>
<div class="actions"><button id="detectButton" onclick="parseListing()">Detect Specs →</button><button class="secondary" id="copySummaryButton" type="button">Copy Analysis</button></div><div class="actions"><button class="secondary" id="saveDealButton" type="button">★ Save Deal</button><a class="secondary" style="display:flex;align-items:center;justify-content:center;border-radius:12px;color:#fff;text-decoration:none;font-weight:850" href="inspector.html">✓ Open Inspector</a></div>
<div id="parseMessage"></div>
</section>
<section class="panel" id="detectedSection">
<div class="section-title"><div><h2>Detected Build</h2><div class="sub" style="margin:4px 0 0">Detected parts stay compact. Expand Review / edit only when needed.</div></div></div>
<div class="hardware-grid">
<div class="hardware-card"><span class="hardware-icon" data-field="cpu">🧠</span><div class="name">CPU</div></div>
<div class="hardware-card"><span class="hardware-icon" data-field="gpu">🎮</span><div class="name">GPU</div></div>
<div class="hardware-card"><span class="hardware-icon" data-field="ram">🧩</span><div class="name">RAM</div></div>
<div class="hardware-card"><span class="hardware-icon" data-field="storageSize">💾</span><div class="name">Storage</div></div>
<div class="hardware-card"><span class="hardware-icon" data-field="motherboard">🧱</span><div class="name">Motherboard</div></div>
<div class="hardware-card"><span class="hardware-icon" data-field="psu">⚡</span><div class="name">PSU</div></div>
<div class="hardware-card"><span class="hardware-icon" data-field="cooler">❄️</span><div class="name">Cooling</div></div>
<div class="hardware-card"><span class="hardware-icon" data-field="caseQuality">🖥️</span><div class="name">Case</div></div>
</div>
<details class="detected-editor" id="detectedEditor">
<summary><span><strong>Review / edit detected parts</strong><small>Optional — expand only if PCDeal missed something or you want to change a part.</small></span><span class="details-chevron">⌄</span></summary>
<div class="detected-editor-body">
<div class="grid"><div class="field"><label>CPU</label><input id="cpu" placeholder="e.g. Ryzen 7 5800X3D"></div><div class="field"><label>GPU</label><input id="gpu" placeholder="e.g. RTX 3080 Ti"></div></div>
<div class="grid"><div class="field"><label>RAM Capacity</label><select id="ram"><option value="">Select RAM</option><option>8GB</option><option>16GB</option><option>32GB</option><option>64GB+</option></select></div><div class="field"><label>RAM Type</label><select id="ramType"><option value="">Unknown</option><option>DDR2</option><option>DDR3</option><option>DDR4</option><option>DDR5</option></select></div></div>
<div class="grid"><div class="field"><label>Storage Type</label><select id="storageType"><option value="">Drive Type</option><option value="NVME M.2">NVME M.2</option><option value="SSD">SSD</option><option value="HDD">HDD</option></select></div><div class="field"><label>Storage Size</label><select id="storageSize"><option value="">Drive Size</option><option>120GB</option><option>128GB</option><option>240GB</option><option>250GB</option><option>256GB</option><option>480GB</option><option>500GB</option><option>512GB</option><option>1TB</option><option>1.5TB</option><option>2TB</option><option>3TB</option><option>4TB</option><option>6TB</option><option>8TB</option></select></div></div>
<div class="field"><label>Motherboard</label><input id="motherboard" placeholder="e.g. MSI MAG B550 Tomahawk WiFi"></div>
<div class="field"><label>Power Supply</label><input id="psu" placeholder="e.g. Corsair RM850x 850W Gold"></div>
<div class="grid-3"><div class="field"><label>CPU Cooler</label><select id="cooler"><option value="">Unknown / not listed</option><optgroup label="Air Cooling"><option value="Stock cooler">Stock / OEM cooler</option><option value="Low-profile air cooler">Low-profile air cooler</option><option value="Single-tower air cooler">Single-tower air cooler</option><option value="Dual-tower air cooler">Dual-tower air cooler</option><option value="Premium air cooler">Premium air cooler</option></optgroup><optgroup label="Liquid Cooling"><option value="120mm AIO">120mm AIO</option><option value="240mm AIO">240mm AIO</option><option value="280mm AIO">280mm AIO</option><option value="360mm AIO">360mm AIO</option><option value="420mm AIO">420mm AIO</option><option value="Custom loop">Custom water-cooling loop</option></optgroup></select></div><div class="field"><label>Case</label><select id="caseQuality"><option value="">Unknown</option><option value="basic">Basic case</option><option value="mid">Mid-range case</option><option value="premium">Premium case</option></select></div><div class="field"><label>Condition</label><select id="condition"><option value="good">Good</option><option value="excellent">Excellent</option><option value="fair">Fair</option><option value="poor">Poor</option></select></div></div>
<div class="grid"><div class="field"><label>Asking Price</label><input id="price" type="number" min="0" placeholder="e.g. 950"></div><div class="field"><label>Currency</label><select id="currency"><option>CAD</option><option>USD</option></select></div></div>
<div class="meter" id="livePriceMeter"><div class="meter-head"><strong>Live Price Meter</strong><span id="livePriceLabel">Add CPU, GPU and price to compare</span></div><div class="meter-track"><div class="meter-fill" id="livePriceFill"></div></div></div>
<button id="analyzeButton" onclick="analyzeDeal()" style="margin-top:16px">Analyze Deal →</button>
</div>
</details>
<div class="result" id="result"><div class="score" id="score"></div><div class="verdict" id="verdict"></div><div class="resultText" id="resultText"></div><div class="warning"><strong>Before buying:</strong><br><br>Test the PC in person when possible. Check temperatures, storage SMART health, GPU stability, and the exact power-supply model.</div></div>
</section>
<section class="panel" id="v3Insights">
<h2>V3 Smart Insights</h2><div class="sub">Roadmap features 3–11. Performance and rarity outputs are estimates, not guaranteed benchmark results.</div>
<div class="insights">
<div class="insight"><h3>🎮 FPS Estimator</h3><div class="dual"><div class="stat"><span>1080p High</span><strong id="fps1080">—</strong></div><div class="stat"><span>1440p High</span><strong id="fps1440">—</strong></div></div><div class="tiny" id="fpsNote">Detect a CPU and GPU first.</div></div>
<div class="insight"><h3>📊 Analysis Confidence</h3><div class="confidence-head"><span class="big" id="confidenceValue">0%</span></div><div class="confidence-track"><div class="confidence-fill" id="confidenceFill"></div></div><div class="tiny">Higher means PCDeal recognized more of the listing.</div></div>
<div class="insight"><h3>💎 Component Rarity</h3><div class="rarity-row"><span class="tag">CPU: <span id="cpuRarity">Unknown</span></span><span class="tag">GPU: <span id="gpuRarity">Unknown</span></span></div><div class="tiny">A simple availability heuristic, not live marketplace inventory.</div></div>
<div class="insight"><h3>⚡ PSU Quality</h3><div class="big" id="psuTier">?</div><div class="tiny" id="psuQualityText">PSU model not provided</div></div>
<div class="insight"><h3>💾 Storage Health</h3><div class="big" id="storageHealthValue">Unknown</div><div class="tiny" id="storageHealthDetail">No health information yet.</div></div>
<div class="insight redflags"><h3>🚩 Seller Red Flags <span class="tag" id="redFlagCount">None detected</span></h3><ul id="redFlagList"><li>No listing analyzed yet.</li></ul></div>
</div>
</section>
<section class="panel"><h2>Explore PCDeal V11.5</h2><div class="sub">The analyzer stays focused. Deeper tools now live on their own pages.</div><div class="insights"><a class="insight" style="text-decoration:none;color:inherit" href="dashboard.html"><h3>🏆 Dashboard</h3><div class="tiny">Overall ranking, listing quality and system summary.</div></a><a class="insight" style="text-decoration:none;color:inherit" href="performance.html"><h3>🎮 Performance</h3><div class="tiny">Games, bottlenecks, resolution, PSU headroom and value/FPS.</div></a><a class="insight" style="text-decoration:none;color:inherit" href="hardware.html"><h3>🧩 Hardware</h3><div class="tiny">Compatibility, part values, upgrades, age and storage.</div></a><a class="insight" style="text-decoration:none;color:inherit" href="buying.html"><h3>🛒 Buying Assistant</h3><div class="tiny">Offers, seller questions, testing checklist and risk.</div></a><a class="insight" style="text-decoration:none;color:inherit" href="compare.html"><h3>🆚 Compare PCs</h3><div class="tiny">Paste two listings and compare value/performance.</div></a><a class="insight" style="text-decoration:none;color:inherit" href="flip.html"><h3>💵 Flip Calculator</h3><div class="tiny">Resale estimate, expenses, profit and margin.</div></a></div></section>
</main>
<footer>PCDeal V11.5 • Used-PC estimates are guidance, not a substitute for testing hardware in person.</footer>
<script src="pcdeal-security-v85.js?v=850"></script><script src="product-catalog-v94.js?v=940"></script><script src="exact-products-v94.js?v=940"></script><script src="platform.js?v=710"></script>
<script src="cpu-data.js?v=710"></script>
<script src="gpu-data.js?v=710"></script>
<script src="parts.js?v=710"></script><script src="hardware-aliases.js?v=720"></script><script src="benchmark-calibration.js?v=900"></script><script src="market-prices.js?v=710"></script><script src="fps-benchmarks-v83.js?v=900"></script><script src="pcdeal-workloads-v8.js?v=900"></script><script src="retail-prices.js?v=700"></script><script src="pcdeal-recognition-v7.js?v=700"></script>
<script src="app-v4.js?v=19"></script>
<script src="pcdeal-v3.js?v=2"></script>
<script src="pcdeal-v5.js?v=6"></script><script src="pcdeal-visuals.js?v=60"></script>
<script type="module" src="firebase-client.js?v=60"></script><script src="pcdeal-v6.js?v=602"></script><script src="pcdeal-analyzer-v8.js?v=800"></script><script src="pcdeal-intelligence-v8.js?v=800"></script><script src="analyzer-recognition-v101.js?v=1010"></script><script src="pcdeal-welcome-v8.js?v=800"></script><script src="canonical-recognition-v102.js?v=1020"></script><script src="supporting-values-v102.js?v=1020"></script><script src="analyzer-sync-v102.js?v=1020"></script><script src="recognition-status-v102.js?v=1020"></script><script src="analyzer-direct-sync-v103.js?v=1030"></script><script src="exact-match-ui-v104.js?v=1040"></script><script src="master-part-pickers-v105.js?v=1050"></script><script src="cooler-case-pricing-v105.js?v=1050"></script><script src="component-visibility-v106.js?v=1060"></script><script src="cooler-case-custom-v107.js?v=1070"></script><script src="pricing-v108.js?v=1080"></script><script src="unified-build-v108.js?v=1080"></script><script src="marketplace-pricing-v109.js?v=1090"></script><script src="hardware-pricing-v109.js?v=1090"></script><script src="retail-db-client-v11.js?v=1100"></script><script src="used-value-v11.js?v=1100"></script><script src="pricing-service-v11.js?v=1100"></script><script src="analyzer-pricing-v11.1.js?v=1110"></script><script src="analyzer-pricing-v11.2.js?v=1120"></script><script src="catalog-service-v11.4.js?v=1140"></script><script src="catalog-status-v11.4.js?v=1140"></script><script src="used-display-v11.5.js?v=1150"></script><script src="site-v123.js?v=1230"></script></body>
</html>