diff options
Diffstat (limited to 'packages/trpc/routers/lists.ts')
| -rw-r--r-- | packages/trpc/routers/lists.ts | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/packages/trpc/routers/lists.ts b/packages/trpc/routers/lists.ts index 92392448..7118c608 100644 --- a/packages/trpc/routers/lists.ts +++ b/packages/trpc/routers/lists.ts @@ -57,10 +57,15 @@ export const listsAppRouter = router({ .input( z.object({ listId: z.string(), + deleteChildren: z.boolean().optional().default(false), }), ) .use(ensureListOwnership) - .mutation(async ({ ctx }) => { + .mutation(async ({ ctx, input }) => { + if (input.deleteChildren) { + const children = await ctx.list.getChildren(); + await Promise.all(children.map((l) => l.delete())); + } await ctx.list.delete(); }), addToList: authedProcedure |
