feat(libsql): enhance libsql service integration in user permissions and project router

- Added 'libsql' to the Services type in add-permissions.tsx for improved service management.
- Implemented extraction logic for 'libsql' services in the extractServices function.
- Updated project router to include 'libsql' in service filters and response columns, ensuring comprehensive data handling for libsql services.
This commit is contained in:
Mauricio Siu
2026-03-23 15:45:24 -06:00
parent 49d79fcd37
commit dce1454d4d
2 changed files with 38 additions and 13 deletions

View File

@@ -30,6 +30,7 @@ import {
IS_CLOUD,
updateProjectById,
} from "@dokploy/server";
import { db } from "@dokploy/server/db";
import {
addNewEnvironment,
addNewProject,
@@ -37,17 +38,16 @@ import {
checkProjectAccess,
findMemberByUserId,
} from "@dokploy/server/services/permission";
import { db } from "@dokploy/server/db";
import { TRPCError } from "@trpc/server";
import { and, desc, eq, ilike, or, sql } from "drizzle-orm";
import type { AnyPgColumn } from "drizzle-orm/pg-core";
import { z } from "zod";
import { audit } from "@/server/api/utils/audit";
import {
createTRPCRouter,
protectedProcedure,
withPermission,
} from "@/server/api/trpc";
import { audit } from "@/server/api/utils/audit";
import {
apiCreateProject,
apiFindOneProject,
@@ -233,12 +233,13 @@ export const projectRouter = createTRPCRouter({
applicationStatus: true,
},
},
compose: {
where: buildServiceFilter(compose.composeId, accessedServices),
with: { domains: true },
},
libsql: {
where: buildServiceFilter(libsql.libsqlId, accessedServices),
columns: {
libsqlId: true,
name: true,
applicationStatus: true,
},
},
mariadb: {
where: buildServiceFilter(mariadb.mariadbId, accessedServices),
@@ -351,12 +352,11 @@ export const projectRouter = createTRPCRouter({
composeStatus: true,
},
},
libsql: true,
mariadb: true,
mongo: true,
mysql: true,
postgres: true,
redis: true,
libsql: {
columns: {
libsqlId: true,
},
},
},
columns: {
name: true,
@@ -469,6 +469,17 @@ export const projectRouter = createTRPCRouter({
serverId: true,
},
},
libsql: {
columns: {
libsqlId: true,
appName: true,
name: true,
createdAt: true,
applicationStatus: true,
description: true,
serverId: true,
},
},
},
},
},