-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpopup.html
More file actions
106 lines (91 loc) · 3.72 KB
/
popup.html
File metadata and controls
106 lines (91 loc) · 3.72 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
105
106
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>The Reality Button</title>
<link rel="stylesheet" href="popup.css" />
</head>
<body>
<div class="app">
<header class="topbar">
<div class="brand">
<div class="brand-icon" aria-hidden="true">◉</div>
<div>
<h1>The Reality Button</h1>
<p>Instant claim verification with grounded AI</p>
</div>
</div>
<button id="openSettingsBtn" class="icon-btn" type="button" aria-label="Open settings">⚙</button>
</header>
<main class="panel-stack">
<section class="panel">
<label for="inputText" class="section-label">Claim or headline</label>
<textarea
id="inputText"
rows="4"
placeholder="Paste text here, or select text on a webpage first..."
></textarea>
<div class="button-row">
<button id="checkBtn" class="primary-btn" type="button">Analyze claim</button>
</div>
<div id="status" class="status hidden" role="status" aria-live="polite"></div>
</section>
<section id="result" class="panel hidden">
<div class="result-header">
<div id="scoreBadge" class="badge">UNCLEAR</div>
<div class="confidence-group">
<div class="confidence-line">
<span id="confidenceEmoji" class="confidence-emoji">•</span>
<span class="confidence-label">Confidence</span>
<span id="confidenceText" class="confidence-value">0%</span>
</div>
<div id="confidenceWrap" class="confidence-wrap hidden">
<div class="confidence-track">
<div id="confidenceFill" class="confidence-fill" style="width: 0%"></div>
</div>
</div>
</div>
</div>
<div id="mythSnippet" class="summary hidden"></div>
<button id="whyToggle" class="secondary-btn hidden" type="button" aria-expanded="false">
Why flagged?
</button>
<div id="whyPanel" class="why-panel hidden">
<div id="rationale" class="reason-list"></div>
</div>
<div class="sources-header">
<h2>Sources</h2>
</div>
<div id="links" class="sources-list"></div>
</section>
<section id="settings" class="panel hidden">
<div class="settings-header">
<h2>Settings</h2>
<button id="closeSettingsBtn" class="text-btn" type="button">Close</button>
</div>
<div class="field">
<label for="apiKeyInput" class="section-label">Gemini API key</label>
<input id="apiKeyInput" type="password" placeholder="Paste your key here" />
<p class="field-help">Stored locally in your browser only.</p>
</div>
<div class="field">
<label for="modelInput" class="section-label">Model</label>
<input id="modelInput" type="text" placeholder="gemini-2.5-flash" />
</div>
<div class="field">
<label for="serverUrlInput" class="section-label">Server URL</label>
<input id="serverUrlInput" type="text" placeholder="https://your-cloud-run-url" />
</div>
<div class="settings-actions">
<button id="saveSettingsBtn" class="primary-btn" type="button">Save</button>
<button id="testKeyBtn" class="secondary-btn" type="button">Test key</button>
<button id="clearKeyBtn" class="danger-btn" type="button">Remove key</button>
</div>
<div id="settingsStatus" class="status hidden" role="status" aria-live="polite"></div>
</section>
</main>
</div>
<script src="popup.js"></script>
</body>
</html>