Files
wg-easy-ca-lose/src/server/api/client/[clientId]/index.get.ts
T
Bernd Storath 529d65b3fb Fix: don't expect dump to contain client
Fixes: #2200
Fixes Bug introduced in: #2058
2025-10-08 13:43:07 +02:00

31 lines
715 B
TypeScript

import { ClientGetSchema } from '#db/repositories/client/types';
export default definePermissionEventHandler(
'clients',
'view',
async ({ event, checkPermissions }) => {
const { clientId } = await getValidatedRouterParams(
event,
validateZod(ClientGetSchema, event)
);
const result = await Database.clients.get(clientId);
checkPermissions(result);
if (!result) {
throw createError({
statusCode: 404,
statusMessage: 'Client not found',
});
}
// data can be undefined if the client is disabled
const data = await WireGuard.dumpByPublicKey(result.publicKey);
return {
...result,
endpoint: data?.endpoint,
};
}
);