From 11949da99abf91f777e3afe5d426d723cd996adc Mon Sep 17 00:00:00 2001 From: Schalli Date: Fri, 19 Jun 2026 08:49:23 +0200 Subject: [PATCH] fix(02): fix prisma client in docker, resolve typescript errors --- apps/api/Dockerfile | 3 +++ apps/api/src/prisma/prisma-tenant.extension.ts | 2 +- apps/api/src/tenant/tenant.controller.ts | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/apps/api/Dockerfile b/apps/api/Dockerfile index 729d3e6..b2d071b 100644 --- a/apps/api/Dockerfile +++ b/apps/api/Dockerfile @@ -14,6 +14,7 @@ COPY --from=deps /app/ ./ COPY apps/api/ ./apps/api/ COPY packages/shared/ ./packages/shared/ COPY tsconfig.base.json ./ +RUN pnpm --filter=@tessera/api exec prisma generate RUN pnpm --filter=@tessera/api build FROM base AS runner @@ -27,6 +28,8 @@ COPY --from=deps /app/apps/api/node_modules ./apps/api/node_modules COPY --from=deps /app/apps/api/package.json ./apps/api/ COPY --from=deps /app/packages/shared/package.json ./packages/shared/ COPY --from=builder /app/apps/api/dist ./apps/api/dist +COPY --from=builder /app/node_modules/.pnpm/@prisma+client@6.19.3_prisma@6.19.3_typescript@5.9.3__typescript@5.9.3/node_modules/.prisma ./node_modules/.pnpm/@prisma+client@6.19.3_prisma@6.19.3_typescript@5.9.3__typescript@5.9.3/node_modules/.prisma +COPY --from=builder /app/apps/api/prisma ./apps/api/prisma COPY --from=builder /app/packages/shared/src ./packages/shared/src USER nestjs EXPOSE 3001 diff --git a/apps/api/src/prisma/prisma-tenant.extension.ts b/apps/api/src/prisma/prisma-tenant.extension.ts index 2f5d522..952a459 100644 --- a/apps/api/src/prisma/prisma-tenant.extension.ts +++ b/apps/api/src/prisma/prisma-tenant.extension.ts @@ -9,7 +9,7 @@ import { PrismaClient } from '@prisma/client'; export function forTenant(prisma: PrismaClient, tenantId: string) { return prisma.$extends({ query: { - $allOperations({ args, query }) { + $allOperations({ args, query }: { args: any; query: (args: any) => any }) { return (prisma as any).$transaction(async (tx: any) => { // Use parameterized query to avoid SQL injection await tx.$executeRawUnsafe( diff --git a/apps/api/src/tenant/tenant.controller.ts b/apps/api/src/tenant/tenant.controller.ts index edf2761..262c016 100644 --- a/apps/api/src/tenant/tenant.controller.ts +++ b/apps/api/src/tenant/tenant.controller.ts @@ -46,7 +46,7 @@ export class TenantController { orderBy: { name: 'asc' }, }); - return tenants.map((t) => ({ + return tenants.map((t: any) => ({ id: t.id, name: t.name, slug: t.slug,