Skip to content

Commit c833456

Browse files
committed
chore(dashboard): resolve PR comments
1 parent 6d67b64 commit c833456

File tree

6 files changed

+47
-22
lines changed

6 files changed

+47
-22
lines changed

packages/apps/app-dashboard/src/components/explorer/ui/FeaturedApps.tsx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -96,13 +96,13 @@ export function FeaturedApps({ apps, onNavigate }: FeaturedAppsProps) {
9696
);
9797

9898
const featuredAppIds = VITE_FEATURED_APP_IDS
99-
? VITE_FEATURED_APP_IDS.split(',').map((id: string) => id.trim())
99+
? VITE_FEATURED_APP_IDS.split(',').map((id: string) => Number(id.trim()))
100100
: [];
101101

102102
// Filter apps to only include featured ones, in the order specified
103103
const featuredApps = featuredAppIds
104-
.map((appId: string) => {
105-
const found = apps.find((app: App) => String(app.appId) === String(appId));
104+
.map((appId: number) => {
105+
const found = apps.find((app: App) => app.appId === appId);
106106
return found;
107107
})
108108
.filter((app: App | undefined): app is App => app !== undefined);

packages/apps/app-dashboard/src/components/user-dashboard/connect/DeletedAppConnect.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,7 @@ export function DeletedAppConnect({
9191
} finally {
9292
setIsUnpermitting(false);
9393
}
94-
}, [agentPKP, authInfo, sessionSigs, appData.appId, permittedVersion, navigate]);
94+
}, [agentPKP, authInfo, sessionSigs, appData.appId, permittedVersion]);
9595

9696
return (
9797
<div

packages/apps/app-dashboard/src/components/user-dashboard/connect/DeletedAppErrorScreen.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ export function DeletedAppErrorScreen({
8787
} finally {
8888
setIsUnpermitting(false);
8989
}
90-
}, [agentPKP, authInfo, sessionSigs, appData.appId, permittedVersion, navigate]);
90+
}, [agentPKP, authInfo, sessionSigs, appData.appId, permittedVersion]);
9191

9292
return (
9393
<div className="w-full max-w-4xl mx-auto relative z-10 space-y-3 sm:space-y-4 lg:space-y-6">

packages/apps/app-dashboard/src/components/user-dashboard/dashboard/PermittedAppsWrapper.tsx

Lines changed: 35 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -44,18 +44,41 @@ export function PermittedAppsWrapper() {
4444
const { permittedApps, unpermittedApps, deletedApps } = useMemo(() => {
4545
if (!allApps) return { permittedApps: [], unpermittedApps: [], deletedApps: [] };
4646

47-
const permittedAppIds = new Set(permittedPkps.filter((p) => !p.isDeleted).map((p) => p.appId));
48-
const unpermittedAppIds = new Set(
49-
unpermittedPkps.filter((p) => !p.isDeleted).map((p) => p.appId),
50-
);
51-
const deletedAppIds = new Set([
52-
...permittedPkps.filter((p) => p.isDeleted).map((p) => p.appId),
53-
...unpermittedPkps.filter((p) => p.isDeleted).map((p) => p.appId),
54-
]);
55-
56-
const permitted = allApps.filter((app) => permittedAppIds.has(app.appId));
57-
const unpermitted = allApps.filter((app) => unpermittedAppIds.has(app.appId));
58-
const deleted = allApps.filter((app) => deletedAppIds.has(app.appId));
47+
// Build sets of appIds for each category in a single pass
48+
const permittedAppIds = new Set<number>();
49+
const unpermittedAppIds = new Set<number>();
50+
const deletedAppIds = new Set<number>();
51+
52+
permittedPkps.forEach((p) => {
53+
if (p.isDeleted) {
54+
deletedAppIds.add(p.appId);
55+
} else {
56+
permittedAppIds.add(p.appId);
57+
}
58+
});
59+
60+
unpermittedPkps.forEach((p) => {
61+
if (p.isDeleted) {
62+
deletedAppIds.add(p.appId);
63+
} else {
64+
unpermittedAppIds.add(p.appId);
65+
}
66+
});
67+
68+
// Categorize apps in a single pass
69+
const permitted: typeof allApps = [];
70+
const unpermitted: typeof allApps = [];
71+
const deleted: typeof allApps = [];
72+
73+
allApps.forEach((app) => {
74+
if (deletedAppIds.has(app.appId)) {
75+
deleted.push(app);
76+
} else if (permittedAppIds.has(app.appId)) {
77+
permitted.push(app);
78+
} else if (unpermittedAppIds.has(app.appId)) {
79+
unpermitted.push(app);
80+
}
81+
});
5982

6083
return { permittedApps: permitted, unpermittedApps: unpermitted, deletedApps: deleted };
6184
}, [allApps, permittedPkps, unpermittedPkps]);

packages/apps/app-dashboard/src/components/user-dashboard/wallet/WalletModal.tsx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import React, { useState } from 'react';
2+
import { createPortal } from 'react-dom';
23
import { motion, AnimatePresence } from 'framer-motion';
34
import { Button } from '@/components/shared/ui/button';
45
import { theme, fonts } from '@/components/user-dashboard/connect/ui/theme';
@@ -604,7 +605,7 @@ export const WalletModal: React.FC<WalletModalProps> = ({ isOpen, onClose }) =>
604605
}
605606
};
606607

607-
return (
608+
return createPortal(
608609
<>
609610
<AnimatePresence>
610611
{isOpen && (
@@ -615,7 +616,7 @@ export const WalletModal: React.FC<WalletModalProps> = ({ isOpen, onClose }) =>
615616
animate={{ opacity: 1 }}
616617
exit={{ opacity: 0 }}
617618
transition={{ duration: 0.2 }}
618-
className="fixed inset-0 bg-black/50 z-50"
619+
className="fixed inset-0 bg-black/50 z-[100]"
619620
onClick={onClose}
620621
/>
621622

@@ -629,7 +630,7 @@ export const WalletModal: React.FC<WalletModalProps> = ({ isOpen, onClose }) =>
629630
stiffness: 300,
630631
damping: 30,
631632
}}
632-
className="fixed inset-0 flex items-start justify-center pt-16 sm:pt-20 md:pt-24 p-4 z-50 pointer-events-none md:pl-64"
633+
className="fixed inset-0 flex items-center justify-center p-4 z-[100] pointer-events-none md:pl-64"
633634
>
634635
<div
635636
className={`w-full max-w-md mx-auto ${theme.mainCard} border ${theme.mainCardBorder} rounded-2xl shadow-2xl overflow-hidden pointer-events-auto`}
@@ -671,6 +672,7 @@ export const WalletModal: React.FC<WalletModalProps> = ({ isOpen, onClose }) =>
671672
</motion.div>
672673
)}
673674
</AnimatePresence>
674-
</>
675+
</>,
676+
document.body,
675677
);
676678
};

packages/apps/app-dashboard/src/hooks/developer-dashboard/useVincentApiWithJWT.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ type StoredJWT = {
1616
const JWT_STORAGE_KEY = 'platformUserJWT';
1717
const EXPECTED_AUDIENCE =
1818
VITE_ENV === 'development'
19-
? 'http://localhost:5173'
19+
? 'http://localhost:3000'
2020
: VITE_ENV === 'staging'
2121
? 'staging.registry.heyvincent.ai'
2222
: 'registry.heyvincent.ai';

0 commit comments

Comments
 (0)