Files
documenso/packages/trpc/server/envelope-router/duplicate-envelope.ts
2025-11-06 16:40:55 +11:00

37 lines
881 B
TypeScript

import { duplicateEnvelope } from '@documenso/lib/server-only/envelope/duplicate-envelope';
import { authenticatedProcedure } from '../trpc';
import {
ZDuplicateEnvelopeRequestSchema,
ZDuplicateEnvelopeResponseSchema,
duplicateEnvelopeMeta,
} from './duplicate-envelope.types';
export const duplicateEnvelopeRoute = authenticatedProcedure
.meta(duplicateEnvelopeMeta)
.input(ZDuplicateEnvelopeRequestSchema)
.output(ZDuplicateEnvelopeResponseSchema)
.mutation(async ({ input, ctx }) => {
const { teamId } = ctx;
const { envelopeId } = input;
ctx.logger.info({
input: {
envelopeId,
},
});
const duplicatedEnvelope = await duplicateEnvelope({
userId: ctx.user.id,
teamId,
id: {
type: 'envelopeId',
id: envelopeId,
},
});
return {
id: duplicatedEnvelope.id,
};
});