Skip to content

Commit 44c6ed2

Browse files
committed
Adding close button
1 parent cd5fd69 commit 44c6ed2

2 files changed

Lines changed: 23 additions & 44 deletions

File tree

package-lock.json

Lines changed: 0 additions & 33 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/App.tsx

Lines changed: 23 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@ import {
4444
} from "@/lib/utils";
4545

4646
function App() {
47+
const [showPrivacyBanner, setShowPrivacyBanner] = useState(true);
4748
const [data, setData] = useState<CopilotUsageData[] | null>(null);
4849
const [aggregatedData, setAggregatedData] = useState<AggregatedData[]>([]);
4950
const [uniqueModels, setUniqueModels] = useState<string[]>([]);
@@ -474,26 +475,37 @@ function App() {
474475
</Button>
475476
</div>
476477
</header>
477-
478+
478479
{/* Privacy Banner */}
479-
<Card className="mb-6 border-green-200 bg-green-50 dark:bg-green-950/10 dark:border-green-800">
480-
<div className="p-4">
481-
<div className="flex items-center gap-3">
482-
<Shield className="h-5 w-5 text-green-600 dark:text-green-400 flex-shrink-0" />
480+
{showPrivacyBanner && (
481+
<Card className="mb-6 border border-green-300 bg-white/90 dark:bg-zinc-900/90 shadow-sm dark:border-green-700 relative">
482+
<button
483+
aria-label="Close privacy banner"
484+
className="absolute top-3 right-3 text-green-700 dark:text-green-300 hover:text-red-500 dark:hover:text-red-400 transition-colors rounded-full p-1 focus:outline-none focus:ring-2 focus:ring-green-400"
485+
onClick={() => setShowPrivacyBanner(false)}
486+
type="button"
487+
>
488+
<span className="sr-only">Close</span>
489+
<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
490+
<path d="M6 6L14 14M14 6L6 14" stroke="currentColor" strokeWidth="2" strokeLinecap="round" />
491+
</svg>
492+
</button>
493+
<div className="p-5 sm:p-6 flex items-center gap-4">
494+
<Shield className="h-6 w-6 text-green-700 dark:text-green-300 flex-shrink-0" />
483495
<div className="flex-1">
484496
<div className="flex items-center gap-2 mb-1">
485-
<h3 className="text-sm font-medium text-green-800 dark:text-green-300">
497+
<h3 className="text-base sm:text-lg font-semibold text-green-900 dark:text-green-200 tracking-tight">
486498
Your Data Stays Private
487499
</h3>
488500
</div>
489-
<p className="text-xs text-green-700 dark:text-green-400">
490-
All CSV data is processed locally in your browser. We never upload, store, or transmit your data to any server.
491-
Your usage information remains completely private and secure on your machine.
501+
<p className="text-sm sm:text-base font-medium text-gray-800 dark:text-gray-100 leading-relaxed">
502+
All CSV data is <span className="font-bold text-green-800 dark:text-green-300">processed locally in your browser</span>. We <span className="font-bold">never upload, store, or transmit your data</span> to any server.<br className="hidden sm:block" />
503+
Your usage information remains <span className="font-bold text-green-800 dark:text-green-300">completely private and secure</span> on your machine.
492504
</p>
493505
</div>
494506
</div>
495-
</div>
496-
</Card>
507+
</Card>
508+
)}
497509

498510
{!(data && data.length > 0) && (
499511
<Card className="mb-8">

0 commit comments

Comments
 (0)