@@ -13,15 +13,17 @@ import { toast } from "sonner";
1313import { useEffectMutation } from "@/lib/EffectRuntime" ;
1414import { Rpc , withRpc } from "@/lib/Rpcs" ;
1515import { useDashboardContext } from "../Contexts" ;
16+ import {
17+ NewFolderDialog ,
18+ SelectedCapsBar ,
19+ UploadCapButton ,
20+ UploadPlaceholderCard ,
21+ } from "./components" ;
1622import { CapCard } from "./components/CapCard/CapCard" ;
1723import { CapPagination } from "./components/CapPagination" ;
1824import { EmptyCapState } from "./components/EmptyCapState" ;
1925import type { FolderDataType } from "./components/Folder" ;
2026import Folder from "./components/Folder" ;
21- import { NewFolderDialog } from "./components/NewFolderDialog" ;
22- import { SelectedCapsBar } from "./components/SelectedCapsBar" ;
23- import { UploadCapButton } from "./components/UploadCapButton" ;
24- import { UploadPlaceholderCard } from "./components/UploadPlaceholderCard" ;
2527import { useUploadingContext } from "./UploadingContext" ;
2628
2729export type VideoData = {
@@ -149,7 +151,7 @@ export const Caps = ({
149151 document . activeElement ?. tagName || "" ,
150152 )
151153 ) {
152- deleteCaps . mutate ( selectedCaps ) ;
154+ deleteCaps ( selectedCaps ) ;
153155 }
154156 }
155157
@@ -197,7 +199,7 @@ export const Caps = ({
197199 } ) ;
198200 } ;
199201
200- const deleteCaps = useEffectMutation ( {
202+ const { mutate : deleteCaps , isPending : isDeletingCaps } = useEffectMutation ( {
201203 mutationFn : Effect . fn ( function * ( ids : Video . VideoId [ ] ) {
202204 if ( ids . length === 0 ) return ;
203205
@@ -252,7 +254,7 @@ export const Caps = ({
252254 } ,
253255 } ) ;
254256
255- const deleteCap = useEffectMutation ( {
257+ const { mutate : deleteCap , isPending : isDeletingCap } = useEffectMutation ( {
256258 mutationFn : ( id : Video . VideoId ) => withRpc ( ( r ) => r . VideoDelete ( id ) ) ,
257259 onSuccess : ( ) => {
258260 toast . success ( "Cap deleted successfully" ) ;
@@ -324,11 +326,11 @@ export const Caps = ({
324326 key = { cap . id }
325327 cap = { cap }
326328 analytics = { analytics [ cap . id ] || 0 }
327- onDelete = { async ( ) => {
329+ onDelete = { ( ) => {
328330 if ( selectedCaps . length > 0 ) {
329- await deleteCaps . mutateAsync ( selectedCaps ) ;
331+ deleteCaps ( selectedCaps ) ;
330332 } else {
331- deleteCap . mutateAsync ( cap . id ) ;
333+ deleteCap ( cap . id ) ;
332334 }
333335 } }
334336 userId = { user ?. id }
@@ -351,8 +353,8 @@ export const Caps = ({
351353 < SelectedCapsBar
352354 selectedCaps = { selectedCaps }
353355 setSelectedCaps = { setSelectedCaps }
354- deleteSelectedCaps = { ( ) => deleteCaps . mutate ( selectedCaps ) }
355- isDeleting = { deleteCaps . isPending }
356+ deleteSelectedCaps = { ( ) => deleteCaps ( selectedCaps ) }
357+ isDeleting = { isDeletingCaps || isDeletingCap }
356358 />
357359 { isDraggingCap && (
358360 < div className = "fixed inset-0 z-50 pointer-events-none" >
0 commit comments