Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
40 commits
Select commit Hold shift + click to select a range
a6aaf68
init the registry
rsproule Sep 17, 2025
0c1c00c
poke
rsproule Sep 17, 2025
157e589
registry
rsproule Sep 17, 2025
49c44a6
fix up loading state
rsproule Sep 17, 2025
a03993b
add tooltip and handle free tier
rsproule Sep 17, 2025
fabcff5
logo on sign in
rsproule Sep 17, 2025
cbe22c8
sync button
rsproule Sep 17, 2025
a1d9670
rm app usage, not ready for it
rsproule Sep 18, 2025
53d0af8
registry with next/react switch
rsproule Sep 18, 2025
d6b7c62
dashboard improvements
zdql Sep 18, 2025
36b0266
Merge pull request #438 from Merit-Systems/br/admin-home-improvements
zdql Sep 18, 2025
ed36913
new tool in reg page
rsproule Sep 18, 2025
5c6c725
fix decimal comparison
zdql Sep 18, 2025
e2ee32c
fix console logs
zdql Sep 18, 2025
c9779ec
Merge pull request #439 from Merit-Systems/br/fix-decimal-comparison
zdql Sep 18, 2025
a200561
cipy cmd
rsproule Sep 18, 2025
4a32325
lock
rsproule Sep 18, 2025
b1d0b21
mobile optimize credit claim
jasonhedman Sep 18, 2025
09bd892
protocol prefix
rsproule Sep 18, 2025
517f76e
Merge pull request #441 from Merit-Systems/json/mobile-optimize-claim
jasonhedman Sep 18, 2025
c49cd1d
Merge pull request #433 from Merit-Systems/rfs/components-regsitry
rsproule Sep 18, 2025
14ee5ac
minor tweaks
rsproule Sep 18, 2025
0040ba5
udpate deps
rsproule Sep 18, 2025
48f6869
Merge pull request #442 from Merit-Systems/rfs/components-regsitry
rsproule Sep 18, 2025
cd5cce3
wrong path
rsproule Sep 18, 2025
73744c4
fix fanout CTE on user page
zdql Sep 18, 2025
db2c62c
fix broken metrics
zdql Sep 19, 2025
48f95cd
minor fix for CI failure
zdql Sep 19, 2025
7e3b8f7
fix buffer
zdql Sep 19, 2025
99ce458
make test run faster and fail quieter
zdql Sep 19, 2025
a758b55
use sproules code
zdql Sep 19, 2025
3f0a576
Merge pull request #446 from Merit-Systems/br/ci-typing-fix
zdql Sep 19, 2025
8ccd4c3
attoning for my sin
zdql Sep 19, 2025
ed03235
Merge pull request #447 from Merit-Systems/br/fix-knip
zdql Sep 19, 2025
7e08587
default model gpt4
rsproule Sep 19, 2025
ad97c9b
update the EchoAccount componetn
rsproule Sep 19, 2025
816d9c8
react sdk is needed
rsproule Sep 19, 2025
4ab1271
Merge branch 'master' into br/fix-fanout-cte
zdql Sep 19, 2025
2f3674d
Merge pull request #444 from Merit-Systems/br/fix-fanout-cte
zdql Sep 19, 2025
21a1a1a
Merge pull request #448 from Merit-Systems/rfs/template-tweak
rsproule Sep 19, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ interface Props {

export const ClaimCreditsContainer: React.FC<Props> = ({ children }) => {
return (
<div className="flex flex-col items-center justify-center gap-8 w-full max-w-xl mx-auto py-8">
<div className="flex flex-col items-center justify-center gap-8 w-full max-w-xl mx-auto py-8 px-2">
<div className="flex flex-col items-center gap-4 text-center max-w-2xl">
<Card className="size-20 p-2 border rounded-xl flex items-center justify-center bg-card">
<Logo className="size-full" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ export const ClaimCreditsCoupon: React.FC<Props> = ({
};

return (
<div className="flex flex-col items-center gap-4">
<div className="flex flex-col items-center gap-4 w-full">
<CouponContainer>
<CouponHeader>
<CouponTitle>
Expand Down Expand Up @@ -105,7 +105,7 @@ export const ClaimCreditsCoupon: React.FC<Props> = ({

export const LoadingCoupon = () => {
return (
<CouponContainer>
<CouponContainer className="w-full">
<CouponHeader>
<CouponTitle>
<div className="opacity-50">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ import { ChartPanel } from '@/components/overview-chart/ChartPanel';
import { api } from '@/trpc/client';

export default function HomePageChart() {
const { data, isLoading, error } = api.admin.tokens.getHomePageChart.useQuery();
const { data, isLoading, error } =
api.admin.tokens.getHomePageChart.useQuery();

return (
<ChartPanel
Expand All @@ -15,4 +16,4 @@ export default function HomePageChart() {
className="mb-8"
/>
);
}
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
'use client';

import React from 'react';
import ChartPanel from '@/components/overview-chart/ChartPanel';
import { ChartPanel } from '@/components/overview-chart/ChartPanel';
import { api } from '@/trpc/client';

interface UserAppsChartProps {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,5 +109,3 @@ export const AppHeader: React.FC<AppHeaderProps> = ({ appId, className }) => {
</div>
);
};

export default AppHeader;
Original file line number Diff line number Diff line change
Expand Up @@ -116,5 +116,3 @@ export const UserHeader: React.FC<UserHeaderProps> = ({
</div>
);
};

export default UserHeader;
8 changes: 0 additions & 8 deletions packages/app/control/src/app/(app)/admin/_components/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,6 @@ export { PendingPayoutsTable } from './pendingPayouts';
export { CompletedPayoutsTable } from './completedPayouts';
export { UserLink } from './UserLink';
export { AppLink } from './AppLink';

// V2 Components
export { default as AppEarnings } from './table/AppEarnings';
export { default as UserEarnings } from './table/UserEarnings';
export { default as UserSpending } from './table/UserSpending';
export { default as AppUsers } from './table/AppUsers';
export { default as UserApps } from './table/UserApps';
export { default as PaymentHistory } from './table/PaymentHistory';
export { UserAppsOverview } from './overview/UserApps';
export { default as TableLayout } from './TableLayout';
export { UserHeader } from './header/User';
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
'use client';

import { OverviewPanel } from '@/components/overview-panel/OverviewPanel';
import { api } from '@/trpc/client';

export function AppEarningsOverview() {
const { data, isLoading, error } =
api.admin.earnings.getAppEarningsOverviewMetrics.useQuery();

return (
<OverviewPanel
title="App Earnings Overview"
description="Summary statistics for app revenues and usage"
metrics={data || []}
isLoading={isLoading}
error={error}
grid={{
columns: 3,
gap: 'md',
responsive: true,
}}
className="mb-8"
/>
);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
'use client';

import React from 'react';
import { OverviewPanel } from '@/components/overview-panel/OverviewPanel';
import { api } from '@/trpc/client';

export function PaymentsOverview() {
const { data, isLoading, error } =
api.admin.payments.getPaymentsOverviewMetrics.useQuery();

return (
<OverviewPanel
title="Payments Overview"
description="How users are paying into the platform"
metrics={data || []}
isLoading={isLoading}
error={error}
grid={{ columns: 3, gap: 'md', responsive: true }}
className="mb-8"
/>
);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
'use client';

import { OverviewPanel } from '@/components/overview-panel/OverviewPanel';
import { api } from '@/trpc/client';

export function UserEarningsOverview() {
const { data, isLoading, error } =
api.admin.earnings.getUserEarningsOverviewMetrics.useQuery();

return (
<OverviewPanel
title="User Earnings Overview"
description="Summary statistics for user earnings"
metrics={data || []}
isLoading={isLoading}
error={error}
grid={{
columns: 3,
gap: 'md',
responsive: true,
}}
className="mb-8"
/>
);
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
'use client';

import { OverviewPanel } from '@/components/overview-panel/OverviewPanel';
import { api } from '@/trpc/client';

export function UserSpendingOverview() {
const { data, isLoading, error } =
api.admin.spending.getUserSpendingOverviewMetrics.useQuery();

return (
<OverviewPanel
title="User Spending Overview"
description="Summary statistics for how users are spending"
metrics={data || []}
isLoading={isLoading}
error={error}
grid={{
columns: 3,
gap: 'md',
responsive: true,
}}
className="mb-8"
/>
);
}
Loading
Loading