diff --git a/apps/web/src/app/(dashboard)/admin/leaderboard/download-button.tsx b/apps/web/src/app/(dashboard)/admin/leaderboard/download-button.tsx deleted file mode 100644 index 164f21159..000000000 --- a/apps/web/src/app/(dashboard)/admin/leaderboard/download-button.tsx +++ /dev/null @@ -1,67 +0,0 @@ -'use client'; - -// delete -import { useState } from 'react'; - -import { Trans } from '@lingui/macro'; -import { Download } from 'lucide-react'; - -import { Button } from '@documenso/ui/primitives/button'; - -import { downloadLeaderboardData } from './fetch-leaderboard.actions'; - -export const DownloadButton = () => { - const [isLoading, setIsLoading] = useState(false); - - const handleDownload = async () => { - try { - setIsLoading(true); - - const data = await downloadLeaderboardData(); - - // Create a blob with the data - const blob = new Blob([JSON.stringify(data, null, 2)], { type: 'application/json' }); - - // Create a URL for the blob - const url = URL.createObjectURL(blob); - - // Create a temporary anchor element - const a = document.createElement('a'); - a.href = url; - a.download = `leaderboard-data-${new Date().toISOString().split('T')[0]}.json`; - - // Trigger the download - document.body.appendChild(a); - a.click(); - - // Clean up - document.body.removeChild(a); - URL.revokeObjectURL(url); - } catch (error) { - console.error('Error downloading data:', error); - } finally { - setIsLoading(false); - } - }; - - return ( - - ); -}; diff --git a/apps/web/src/app/(dashboard)/admin/leaderboard/fetch-leaderboard.actions.ts b/apps/web/src/app/(dashboard)/admin/leaderboard/fetch-leaderboard.actions.ts index c01341edf..42fc20c97 100644 --- a/apps/web/src/app/(dashboard)/admin/leaderboard/fetch-leaderboard.actions.ts +++ b/apps/web/src/app/(dashboard)/admin/leaderboard/fetch-leaderboard.actions.ts @@ -23,22 +23,3 @@ export async function search({ search, page, perPage, sortBy, sortOrder }: Searc return results; } - -// delete -export async function downloadLeaderboardData() { - const { user } = await getRequiredServerComponentSession(); - - if (!isAdmin(user)) { - throw new Error('Unauthorized'); - } - - const results = await getSigningVolume({ - search: '', - page: 1, - perPage: 1000, - sortBy: 'signingVolume', - sortOrder: 'desc', - }); - - return results.leaderboard; -} diff --git a/apps/web/src/app/(dashboard)/admin/leaderboard/page.tsx b/apps/web/src/app/(dashboard)/admin/leaderboard/page.tsx index b008ed454..78eb7c371 100644 --- a/apps/web/src/app/(dashboard)/admin/leaderboard/page.tsx +++ b/apps/web/src/app/(dashboard)/admin/leaderboard/page.tsx @@ -5,7 +5,6 @@ import { getRequiredServerComponentSession } from '@documenso/lib/next-auth/get- import { isAdmin } from '@documenso/lib/next-auth/guards/is-admin'; import { LeaderboardTable, type SigningVolume } from './data-table-leaderboard'; -import { DownloadButton } from './download-button'; import { search } from './fetch-leaderboard.actions'; type AdminLeaderboardProps = { @@ -53,8 +52,6 @@ export default async function Leaderboard({ searchParams = {} }: AdminLeaderboar

Signing Volume

- {/* TODO: remove */} -