diff --git a/apps/client/pages/settings.tsx b/apps/client/pages/settings.tsx index 581a937b..b0380f6b 100644 --- a/apps/client/pages/settings.tsx +++ b/apps/client/pages/settings.tsx @@ -35,7 +35,7 @@ export default function SettingsPage() { Details Security - Billing + {process.env.STRIPE_API_KEY && Billing} @@ -46,9 +46,11 @@ export default function SettingsPage() { - - - + {process.env.STRIPE_API_KEY && ( + + + + )} diff --git a/apps/workers/src/env.ts b/apps/workers/src/env.ts index ba2464b9..3bfcfb45 100644 --- a/apps/workers/src/env.ts +++ b/apps/workers/src/env.ts @@ -33,6 +33,8 @@ const envSchema = z.object({ NX_CDN_PRIVATE_BUCKET: z.string().default('REPLACE_THIS'), NX_CDN_PUBLIC_BUCKET: z.string().default('REPLACE_THIS'), + + STRIPE_API_KEY: z.string().optional(), }) const env = envSchema.parse(process.env) diff --git a/apps/workers/src/main.ts b/apps/workers/src/main.ts index f6795dc6..70cdffd6 100644 --- a/apps/workers/src/main.ts +++ b/apps/workers/src/main.ts @@ -154,11 +154,13 @@ syncInstitutionQueue.add( */ sendEmailQueue.process('send-email', async (job) => await emailProcessor.send(job.data)) -sendEmailQueue.add( - 'send-email', - { type: 'trial-reminders' }, - { repeat: { cron: '0 */12 * * *' } } // Run every 12 hours -) +if (env.STRIPE_API_KEY) { + sendEmailQueue.add( + 'send-email', + { type: 'trial-reminders' }, + { repeat: { cron: '0 */12 * * *' } } // Run every 12 hours + ) +} // Fallback - usually triggered by errors not handled (or thrown) within the Bull event handlers (see above) process.on( diff --git a/libs/client/features/src/layout/DesktopLayout.tsx b/libs/client/features/src/layout/DesktopLayout.tsx index 21023d6b..55eaf49a 100644 --- a/libs/client/features/src/layout/DesktopLayout.tsx +++ b/libs/client/features/src/layout/DesktopLayout.tsx @@ -313,7 +313,6 @@ function DefaultContent({ email, }: PropsWithChildren<{ onboarding?: ReactNode; name?: string; email?: string }>) { const { addAccount } = useAccountContext() - return ( <>
@@ -338,7 +337,7 @@ function DefaultContent({ {onboarding && onboarding} - + {process.env.STRIPE_API_KEY && }
diff --git a/libs/client/features/src/layout/MobileLayout.tsx b/libs/client/features/src/layout/MobileLayout.tsx index 585af1dd..960b929e 100644 --- a/libs/client/features/src/layout/MobileLayout.tsx +++ b/libs/client/features/src/layout/MobileLayout.tsx @@ -174,7 +174,7 @@ export function MobileLayout({ children, sidebar }: MobileLayoutProps) {
- + {process.env.STRIPE_API_KEY && }
diff --git a/libs/client/features/src/user-billing/BillingPreferences.tsx b/libs/client/features/src/user-billing/BillingPreferences.tsx index 022a03d8..66064d1f 100644 --- a/libs/client/features/src/user-billing/BillingPreferences.tsx +++ b/libs/client/features/src/user-billing/BillingPreferences.tsx @@ -78,7 +78,9 @@ export function BillingPreferences() {
)} - setTakeoverOpen(false)} /> + {process.env.STRIPE_API_KEY && ( + setTakeoverOpen(false)} /> + )} ) }