From 38d403bcc26244e778a6e7a2f75ee39a9ec7ed27 Mon Sep 17 00:00:00 2001 From: Mohamed Bassem Date: Sun, 12 Jan 2025 23:47:25 +0000 Subject: fix: Limit concurrency of bulk actions. Fix #773 --- .../dashboard/bookmarks/BulkManageListsModal.tsx | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'apps/web/components/dashboard/bookmarks/BulkManageListsModal.tsx') diff --git a/apps/web/components/dashboard/bookmarks/BulkManageListsModal.tsx b/apps/web/components/dashboard/bookmarks/BulkManageListsModal.tsx index 9c1f05d2..27e5c5e2 100644 --- a/apps/web/components/dashboard/bookmarks/BulkManageListsModal.tsx +++ b/apps/web/components/dashboard/bookmarks/BulkManageListsModal.tsx @@ -21,6 +21,7 @@ import { useForm } from "react-hook-form"; import { z } from "zod"; import { useAddBookmarkToList } from "@hoarder/shared-react/hooks/lists"; +import { limitConcurrency } from "@hoarder/shared/concurrency"; import { BookmarkListSelector } from "../lists/BookmarkListSelector"; @@ -67,11 +68,15 @@ export default function BulkManageListsModal({ const onSubmit = async (value: z.infer) => { const results = await Promise.allSettled( - bookmarkIds.map((bookmarkId) => - addToList({ - bookmarkId, - listId: value.listId, - }), + limitConcurrency( + bookmarkIds.map( + (bookmarkId) => () => + addToList({ + bookmarkId, + listId: value.listId, + }), + ), + 50, ), ); -- cgit v1.2.3-70-g09d2