From 8c86983e4dde05edf55850dbb6ee7cc72bfe1705 Mon Sep 17 00:00:00 2001 From: Developing-Gamer Date: Mon, 10 Nov 2025 00:51:19 +0000 Subject: [PATCH] Implemented code rabbit & greptile suggestions --- .../launch-checklist/page-client.tsx | 44 +++++++++++-------- apps/dashboard/src/app/globals.css | 3 ++ docs/content/docs/(guides)/others/convex.mdx | 2 +- 3 files changed, 29 insertions(+), 20 deletions(-) diff --git a/apps/dashboard/src/app/(main)/(protected)/projects/[projectId]/launch-checklist/page-client.tsx b/apps/dashboard/src/app/(main)/(protected)/projects/[projectId]/launch-checklist/page-client.tsx index 743212ae5..f1cb8c90d 100644 --- a/apps/dashboard/src/app/(main)/(protected)/projects/[projectId]/launch-checklist/page-client.tsx +++ b/apps/dashboard/src/app/(main)/(protected)/projects/[projectId]/launch-checklist/page-client.tsx @@ -4,6 +4,7 @@ import { InlineCode } from "@/components/inline-code"; import { StyledLink } from "@/components/link"; import { useRouter } from "@/components/router"; import { SettingSwitch } from "@/components/settings"; +import { runAsynchronously } from "@stackframe/stack-shared/dist/utils/promises"; import { Badge, Button, @@ -146,23 +147,19 @@ type LaunchTask = { const STATUS_META: Record< LaunchTaskStatus, { - badgeLabel: string, cardClass: string, inactiveIcon: string, } > = { done: { - badgeLabel: "Complete", cardClass: "border-primary/30 bg-background transition-all duration-300 hover:shadow-lg dark:border-primary/40 dark:shadow-primary/5", inactiveIcon: "text-emerald-500 dark:text-emerald-400", }, action: { - badgeLabel: "Up next", cardClass: "border-primary/30 bg-background transition-all duration-300 hover:shadow-lg dark:border-primary/40 dark:shadow-primary/5", inactiveIcon: "text-muted-foreground", }, blocked: { - badgeLabel: "Resolve", cardClass: "border-primary/30 bg-background transition-all duration-300 hover:shadow-lg dark:border-primary/40 dark:shadow-primary/5", inactiveIcon: "text-muted-foreground", }, @@ -213,6 +210,14 @@ function TaskCard(props: { { + if (e.key === "Enter" || e.key === " ") { + e.preventDefault(); + props.onToggle(); + } + }} >
@@ -238,6 +243,7 @@ function TaskCard(props: {
@@ -310,7 +316,7 @@ export default function PageClient() { const isSharedEmailServer = emailServerConfig.isShared; const oauthProviders = project.config.oauthProviders; const sharedOAuthProviders = oauthProviders.filter( - (provider) => provider.type === "shared", + (provider: { type: string }) => provider.type === "shared", ); const baseProjectPath = `/projects/${project.id}`; @@ -321,7 +327,7 @@ export default function PageClient() { done: hasDomainConfigured, detail: hasDomainConfigured ? (
- {domainConfigs.slice(0, 3).map(({ domain }) => ( + {domainConfigs.slice(0, 3).map(({ domain }: { domain: string }) => ( {domain} ))} {domainConfigs.length > 3 && ( @@ -357,7 +363,7 @@ export default function PageClient() { }; const sharedProviderLabels = sharedOAuthProviders.map( - (provider) => PROVIDER_GUIDES.get(provider.id)?.label ?? provider.id, + (provider: { id: string }) => PROVIDER_GUIDES.get(provider.id)?.label ?? provider.id, ); const oauthTask: LaunchTask = { id: "oauth", @@ -382,7 +388,7 @@ export default function PageClient() { Swap custom keys for:
- {sharedProviderLabels.map((label) => ( + {sharedProviderLabels.map((label: string) => ( {label} @@ -449,7 +455,7 @@ export default function PageClient() { Fix these before enabling production mode:
    - {productionModeErrors.map((error) => ( + {productionModeErrors.map((error: { message: string, relativeFixUrl: string }) => (
  • {error.message}{" "} @@ -564,9 +570,7 @@ export default function PageClient() { origin: { x: randomInRange(0.1, 0.9), y: 0 }, }); if (result) { - result.catch(() => { - // Ignore confetti errors - }); + runAsynchronously(result, { noErrorLogging: true }); } }, 250); @@ -591,7 +595,8 @@ export default function PageClient() { Need help? View setup guides for each provider.