From bc91bb313277e436afb8c8bc4a2dee686759913f Mon Sep 17 00:00:00 2001 From: Dominik Koch Date: Sat, 26 Oct 2024 12:28:40 +0200 Subject: [PATCH 1/2] fix: use ! syntax instead of || "" --- .../dashboard/settings/billing/show-billing.tsx | 2 +- apps/dokploy/migration.ts | 2 +- apps/dokploy/pages/api/stripe/webhook.ts | 4 ++-- apps/dokploy/server/api/routers/auth.ts | 8 ++++---- apps/dokploy/server/api/routers/stripe.ts | 6 +++--- apps/dokploy/server/db/drizzle.config.ts | 2 +- apps/dokploy/server/db/index.ts | 4 ++-- apps/dokploy/server/db/migration.ts | 2 +- apps/dokploy/server/db/reset.ts | 2 +- apps/dokploy/server/db/seed.ts | 2 +- apps/dokploy/server/utils/stripe.ts | 4 ++-- apps/schedules/src/queue.ts | 2 +- packages/server/src/db/drizzle.config.ts | 2 +- packages/server/src/db/index.ts | 4 ++-- packages/server/src/db/migration.ts | 2 +- packages/server/src/db/reset.ts | 2 +- packages/server/src/db/seed.ts | 2 +- packages/server/src/emails/emails/notion-magic-link.tsx | 4 +--- .../server/src/emails/emails/plaid-verify-identity.tsx | 4 +--- packages/server/src/emails/emails/stripe-welcome.tsx | 4 +--- packages/server/src/emails/emails/vercel-invite-user.tsx | 4 +--- packages/server/src/setup/traefik-setup.ts | 4 ++-- 22 files changed, 32 insertions(+), 40 deletions(-) diff --git a/apps/dokploy/components/dashboard/settings/billing/show-billing.tsx b/apps/dokploy/components/dashboard/settings/billing/show-billing.tsx index a022d87c6..08b820b1e 100644 --- a/apps/dokploy/components/dashboard/settings/billing/show-billing.tsx +++ b/apps/dokploy/components/dashboard/settings/billing/show-billing.tsx @@ -10,7 +10,7 @@ import { AlertTriangle, CheckIcon, MinusIcon, PlusIcon } from "lucide-react"; import React, { useState } from "react"; const stripePromise = loadStripe( - process.env.NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY || "", + process.env.NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY!, ); export const calculatePrice = (count: number, isAnnual = false) => { diff --git a/apps/dokploy/migration.ts b/apps/dokploy/migration.ts index ff1b31d03..d52066c88 100644 --- a/apps/dokploy/migration.ts +++ b/apps/dokploy/migration.ts @@ -2,7 +2,7 @@ import { drizzle } from "drizzle-orm/postgres-js"; import { migrate } from "drizzle-orm/postgres-js/migrator"; import postgres from "postgres"; -const connectionString = process.env.DATABASE_URL || ""; +const connectionString = process.env.DATABASE_URL!; const sql = postgres(connectionString, { max: 1 }); const db = drizzle(sql); diff --git a/apps/dokploy/pages/api/stripe/webhook.ts b/apps/dokploy/pages/api/stripe/webhook.ts index 96e414d97..c6364d945 100644 --- a/apps/dokploy/pages/api/stripe/webhook.ts +++ b/apps/dokploy/pages/api/stripe/webhook.ts @@ -6,7 +6,7 @@ import { asc, eq } from "drizzle-orm"; import type { NextApiRequest, NextApiResponse } from "next"; import Stripe from "stripe"; -const endpointSecret = process.env.STRIPE_WEBHOOK_SECRET || ""; +const endpointSecret = process.env.STRIPE_WEBHOOK_SECRET!; export const config = { api: { @@ -21,7 +21,7 @@ export default async function handler( if (!endpointSecret) { return res.status(400).send("Webhook Error: Missing Stripe Secret Key"); } - const stripe = new Stripe(process.env.STRIPE_SECRET_KEY || "", { + const stripe = new Stripe(process.env.STRIPE_SECRET_KEY!, { apiVersion: "2024-09-30.acacia", maxNetworkRetries: 3, }); diff --git a/apps/dokploy/server/api/routers/auth.ts b/apps/dokploy/server/api/routers/auth.ts index 5315800ef..9d0f2876b 100644 --- a/apps/dokploy/server/api/routers/auth.ts +++ b/apps/dokploy/server/api/routers/auth.ts @@ -272,12 +272,12 @@ export const authRouter = createTRPCRouter({ const email = await sendEmailNotification( { - fromAddress: process.env.SMTP_FROM_ADDRESS || "", + fromAddress: process.env.SMTP_FROM_ADDRESS!, toAddresses: [authR.email], - smtpServer: process.env.SMTP_SERVER || "", + smtpServer: process.env.SMTP_SERVER!, smtpPort: Number(process.env.SMTP_PORT), - username: process.env.SMTP_USERNAME || "", - password: process.env.SMTP_PASSWORD || "", + username: process.env.SMTP_USERNAME!, + password: process.env.SMTP_PASSWORD!, }, "Reset Password", ` diff --git a/apps/dokploy/server/api/routers/stripe.ts b/apps/dokploy/server/api/routers/stripe.ts index f897e03fc..ccfa162f1 100644 --- a/apps/dokploy/server/api/routers/stripe.ts +++ b/apps/dokploy/server/api/routers/stripe.ts @@ -15,7 +15,7 @@ export const stripeRouter = createTRPCRouter({ const admin = await findAdminById(ctx.user.adminId); const stripeCustomerId = admin.stripeCustomerId; - const stripe = new Stripe(process.env.STRIPE_SECRET_KEY || "", { + const stripe = new Stripe(process.env.STRIPE_SECRET_KEY!, { apiVersion: "2024-09-30.acacia", }); @@ -51,7 +51,7 @@ export const stripeRouter = createTRPCRouter({ }), ) .mutation(async ({ ctx, input }) => { - const stripe = new Stripe(process.env.STRIPE_SECRET_KEY || "", { + const stripe = new Stripe(process.env.STRIPE_SECRET_KEY!, { apiVersion: "2024-09-30.acacia", }); @@ -98,7 +98,7 @@ export const stripeRouter = createTRPCRouter({ } const stripeCustomerId = admin.stripeCustomerId; - const stripe = new Stripe(process.env.STRIPE_SECRET_KEY || "", { + const stripe = new Stripe(process.env.STRIPE_SECRET_KEY!, { apiVersion: "2024-09-30.acacia", }); diff --git a/apps/dokploy/server/db/drizzle.config.ts b/apps/dokploy/server/db/drizzle.config.ts index f556649be..60a3bb937 100644 --- a/apps/dokploy/server/db/drizzle.config.ts +++ b/apps/dokploy/server/db/drizzle.config.ts @@ -4,7 +4,7 @@ export default defineConfig({ schema: "./server/db/schema/index.ts", dialect: "postgresql", dbCredentials: { - url: process.env.DATABASE_URL || "", + url: process.env.DATABASE_URL!, }, out: "drizzle", migrations: { diff --git a/apps/dokploy/server/db/index.ts b/apps/dokploy/server/db/index.ts index 4ebcc38a0..e153d6891 100644 --- a/apps/dokploy/server/db/index.ts +++ b/apps/dokploy/server/db/index.ts @@ -8,12 +8,12 @@ declare global { export let db: PostgresJsDatabase; if (process.env.NODE_ENV === "production") { - db = drizzle(postgres(process.env.DATABASE_URL || ""), { + db = drizzle(postgres(process.env.DATABASE_URL!), { schema, }); } else { if (!global.db) - global.db = drizzle(postgres(process.env.DATABASE_URL || ""), { + global.db = drizzle(postgres(process.env.DATABASE_URL!), { schema, }); diff --git a/apps/dokploy/server/db/migration.ts b/apps/dokploy/server/db/migration.ts index d38d39434..fa2e1a80f 100644 --- a/apps/dokploy/server/db/migration.ts +++ b/apps/dokploy/server/db/migration.ts @@ -2,7 +2,7 @@ import { drizzle } from "drizzle-orm/postgres-js"; import { migrate } from "drizzle-orm/postgres-js/migrator"; import postgres from "postgres"; -const connectionString = process.env.DATABASE_URL || ""; +const connectionString = process.env.DATABASE_URL!; const sql = postgres(connectionString, { max: 1 }); const db = drizzle(sql); diff --git a/apps/dokploy/server/db/reset.ts b/apps/dokploy/server/db/reset.ts index 4a4dbecba..7497bec33 100644 --- a/apps/dokploy/server/db/reset.ts +++ b/apps/dokploy/server/db/reset.ts @@ -3,7 +3,7 @@ import { sql } from "drizzle-orm"; import { drizzle } from "drizzle-orm/postgres-js"; import postgres from "postgres"; -const connectionString = process.env.DATABASE_URL || ""; +const connectionString = process.env.DATABASE_URL!; const pg = postgres(connectionString, { max: 1 }); const db = drizzle(pg); diff --git a/apps/dokploy/server/db/seed.ts b/apps/dokploy/server/db/seed.ts index bbb3c3f27..b79350797 100644 --- a/apps/dokploy/server/db/seed.ts +++ b/apps/dokploy/server/db/seed.ts @@ -3,7 +3,7 @@ import { drizzle } from "drizzle-orm/postgres-js"; import postgres from "postgres"; import { users } from "./schema"; -const connectionString = process.env.DATABASE_URL || ""; +const connectionString = process.env.DATABASE_URL!; const pg = postgres(connectionString, { max: 1 }); const db = drizzle(pg); diff --git a/apps/dokploy/server/utils/stripe.ts b/apps/dokploy/server/utils/stripe.ts index b5af6a0b7..9e3e751a4 100644 --- a/apps/dokploy/server/utils/stripe.ts +++ b/apps/dokploy/server/utils/stripe.ts @@ -3,9 +3,9 @@ export const WEBSITE_URL = ? "http://localhost:3000" : process.env.SITE_URL; -const BASE_PRICE_MONTHLY_ID = process.env.BASE_PRICE_MONTHLY_ID || ""; // $4.00 +const BASE_PRICE_MONTHLY_ID = process.env.BASE_PRICE_MONTHLY_ID!; // $4.00 -const BASE_ANNUAL_MONTHLY_ID = process.env.BASE_ANNUAL_MONTHLY_ID || ""; // $7.99 +const BASE_ANNUAL_MONTHLY_ID = process.env.BASE_ANNUAL_MONTHLY_ID!; // $7.99 export const getStripeItems = (serverQuantity: number, isAnnual: boolean) => { const items = []; diff --git a/apps/schedules/src/queue.ts b/apps/schedules/src/queue.ts index f8ecba7f2..471b9a4a6 100644 --- a/apps/schedules/src/queue.ts +++ b/apps/schedules/src/queue.ts @@ -3,7 +3,7 @@ import IORedis from "ioredis"; import { logger } from "./logger"; import type { QueueJob } from "./schema"; -export const connection = new IORedis(process.env.REDIS_URL || "", { +export const connection = new IORedis(process.env.REDIS_URL!, { maxRetriesPerRequest: null, }); export const jobQueue = new Queue("backupQueue", { diff --git a/packages/server/src/db/drizzle.config.ts b/packages/server/src/db/drizzle.config.ts index f556649be..60a3bb937 100644 --- a/packages/server/src/db/drizzle.config.ts +++ b/packages/server/src/db/drizzle.config.ts @@ -4,7 +4,7 @@ export default defineConfig({ schema: "./server/db/schema/index.ts", dialect: "postgresql", dbCredentials: { - url: process.env.DATABASE_URL || "", + url: process.env.DATABASE_URL!, }, out: "drizzle", migrations: { diff --git a/packages/server/src/db/index.ts b/packages/server/src/db/index.ts index c81531447..d5e1d7128 100644 --- a/packages/server/src/db/index.ts +++ b/packages/server/src/db/index.ts @@ -7,12 +7,12 @@ declare global { export let db: PostgresJsDatabase; if (process.env.NODE_ENV === "production") { - db = drizzle(postgres(process.env.DATABASE_URL || ""), { + db = drizzle(postgres(process.env.DATABASE_URL!), { schema, }); } else { if (!global.db) - global.db = drizzle(postgres(process.env.DATABASE_URL || ""), { + global.db = drizzle(postgres(process.env.DATABASE_URL!), { schema, }); diff --git a/packages/server/src/db/migration.ts b/packages/server/src/db/migration.ts index 75a79b349..6fada0833 100644 --- a/packages/server/src/db/migration.ts +++ b/packages/server/src/db/migration.ts @@ -2,7 +2,7 @@ // import { migrate } from "drizzle-orm/postgres-js/migrator"; // import postgres from "postgres"; -// const connectionString = process.env.DATABASE_URL || ""; +// const connectionString = process.env.DATABASE_URL!; // const sql = postgres(connectionString, { max: 1 }); // const db = drizzle(sql); diff --git a/packages/server/src/db/reset.ts b/packages/server/src/db/reset.ts index 4a4dbecba..7497bec33 100644 --- a/packages/server/src/db/reset.ts +++ b/packages/server/src/db/reset.ts @@ -3,7 +3,7 @@ import { sql } from "drizzle-orm"; import { drizzle } from "drizzle-orm/postgres-js"; import postgres from "postgres"; -const connectionString = process.env.DATABASE_URL || ""; +const connectionString = process.env.DATABASE_URL!; const pg = postgres(connectionString, { max: 1 }); const db = drizzle(pg); diff --git a/packages/server/src/db/seed.ts b/packages/server/src/db/seed.ts index 9e19cb0f3..7e2736b00 100644 --- a/packages/server/src/db/seed.ts +++ b/packages/server/src/db/seed.ts @@ -3,7 +3,7 @@ // import postgres from "postgres"; // import { users } from "./schema"; -// const connectionString = process.env.DATABASE_URL || ""; +// const connectionString = process.env.DATABASE_URL!; // const pg = postgres(connectionString, { max: 1 }); // const db = drizzle(pg); diff --git a/packages/server/src/emails/emails/notion-magic-link.tsx b/packages/server/src/emails/emails/notion-magic-link.tsx index 89cc3444c..a8dc4337b 100644 --- a/packages/server/src/emails/emails/notion-magic-link.tsx +++ b/packages/server/src/emails/emails/notion-magic-link.tsx @@ -15,9 +15,7 @@ interface NotionMagicLinkEmailProps { loginCode?: string; } -const baseUrl = process.env.VERCEL_URL - ? `https://${process.env.VERCEL_URL}` - : ""; +const baseUrl = process.env.VERCEL_URL! export const NotionMagicLinkEmail = ({ loginCode, diff --git a/packages/server/src/emails/emails/plaid-verify-identity.tsx b/packages/server/src/emails/emails/plaid-verify-identity.tsx index 2fce846a8..256613252 100644 --- a/packages/server/src/emails/emails/plaid-verify-identity.tsx +++ b/packages/server/src/emails/emails/plaid-verify-identity.tsx @@ -15,9 +15,7 @@ interface PlaidVerifyIdentityEmailProps { validationCode?: string; } -const baseUrl = process.env.VERCEL_URL - ? `https://${process.env.VERCEL_URL}` - : ""; +const baseUrl = process.env.VERCEL_URL! export const PlaidVerifyIdentityEmail = ({ validationCode, diff --git a/packages/server/src/emails/emails/stripe-welcome.tsx b/packages/server/src/emails/emails/stripe-welcome.tsx index 232f4a2ce..de21cf24e 100644 --- a/packages/server/src/emails/emails/stripe-welcome.tsx +++ b/packages/server/src/emails/emails/stripe-welcome.tsx @@ -13,9 +13,7 @@ import { } from "@react-email/components"; import * as React from "react"; -const baseUrl = process.env.VERCEL_URL - ? `https://${process.env.VERCEL_URL}` - : ""; +const baseUrl = process.env.VERCEL_URL! export const StripeWelcomeEmail = () => ( diff --git a/packages/server/src/emails/emails/vercel-invite-user.tsx b/packages/server/src/emails/emails/vercel-invite-user.tsx index bd7404ab9..ffc29bb22 100644 --- a/packages/server/src/emails/emails/vercel-invite-user.tsx +++ b/packages/server/src/emails/emails/vercel-invite-user.tsx @@ -29,9 +29,7 @@ interface VercelInviteUserEmailProps { inviteFromLocation?: string; } -const baseUrl = process.env.VERCEL_URL - ? `https://${process.env.VERCEL_URL}` - : ""; +const baseUrl = process.env.VERCEL_URL! export const VercelInviteUserEmail = ({ username, diff --git a/packages/server/src/setup/traefik-setup.ts b/packages/server/src/setup/traefik-setup.ts index 27bc99a4f..828320279 100644 --- a/packages/server/src/setup/traefik-setup.ts +++ b/packages/server/src/setup/traefik-setup.ts @@ -9,8 +9,8 @@ import type { FileConfig } from "../utils/traefik/file-types"; import type { MainTraefikConfig } from "../utils/traefik/types"; const TRAEFIK_SSL_PORT = - Number.parseInt(process.env.TRAEFIK_SSL_PORT ?? "", 10) || 443; -const TRAEFIK_PORT = Number.parseInt(process.env.TRAEFIK_PORT ?? "", 10) || 80; + Number.parseInt(process.env.TRAEFIK_SSL_PORT!, 10) || 443; +const TRAEFIK_PORT = Number.parseInt(process.env.TRAEFIK_PORT!, 10) || 80; interface TraefikOptions { enableDashboard?: boolean; From 5f13fb2316a9220bdb9157c5556fc87f362b732e Mon Sep 17 00:00:00 2001 From: Dominik Koch Date: Sat, 26 Oct 2024 12:42:23 +0200 Subject: [PATCH 2/2] style: lint code --- packages/server/src/emails/emails/notion-magic-link.tsx | 2 +- packages/server/src/emails/emails/plaid-verify-identity.tsx | 2 +- packages/server/src/emails/emails/stripe-welcome.tsx | 2 +- packages/server/src/emails/emails/vercel-invite-user.tsx | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/server/src/emails/emails/notion-magic-link.tsx b/packages/server/src/emails/emails/notion-magic-link.tsx index a8dc4337b..b2286c340 100644 --- a/packages/server/src/emails/emails/notion-magic-link.tsx +++ b/packages/server/src/emails/emails/notion-magic-link.tsx @@ -15,7 +15,7 @@ interface NotionMagicLinkEmailProps { loginCode?: string; } -const baseUrl = process.env.VERCEL_URL! +const baseUrl = process.env.VERCEL_URL!; export const NotionMagicLinkEmail = ({ loginCode, diff --git a/packages/server/src/emails/emails/plaid-verify-identity.tsx b/packages/server/src/emails/emails/plaid-verify-identity.tsx index 256613252..650ab4866 100644 --- a/packages/server/src/emails/emails/plaid-verify-identity.tsx +++ b/packages/server/src/emails/emails/plaid-verify-identity.tsx @@ -15,7 +15,7 @@ interface PlaidVerifyIdentityEmailProps { validationCode?: string; } -const baseUrl = process.env.VERCEL_URL! +const baseUrl = process.env.VERCEL_URL!; export const PlaidVerifyIdentityEmail = ({ validationCode, diff --git a/packages/server/src/emails/emails/stripe-welcome.tsx b/packages/server/src/emails/emails/stripe-welcome.tsx index de21cf24e..9377853be 100644 --- a/packages/server/src/emails/emails/stripe-welcome.tsx +++ b/packages/server/src/emails/emails/stripe-welcome.tsx @@ -13,7 +13,7 @@ import { } from "@react-email/components"; import * as React from "react"; -const baseUrl = process.env.VERCEL_URL! +const baseUrl = process.env.VERCEL_URL!; export const StripeWelcomeEmail = () => ( diff --git a/packages/server/src/emails/emails/vercel-invite-user.tsx b/packages/server/src/emails/emails/vercel-invite-user.tsx index ffc29bb22..53b31987c 100644 --- a/packages/server/src/emails/emails/vercel-invite-user.tsx +++ b/packages/server/src/emails/emails/vercel-invite-user.tsx @@ -29,7 +29,7 @@ interface VercelInviteUserEmailProps { inviteFromLocation?: string; } -const baseUrl = process.env.VERCEL_URL! +const baseUrl = process.env.VERCEL_URL!; export const VercelInviteUserEmail = ({ username,