diff options
| author | Maze Winther <mazewinther@gmail.com> | 2025-07-08 23:38:27 +0200 |
|---|---|---|
| committer | Maze Winther <mazewinther@gmail.com> | 2025-07-08 23:38:27 +0200 |
| commit | 66da1e20d35dca5b9168cab9e2f3555c210a7116 (patch) | |
| tree | bf14d29aff3b1a69d769a1dc5f251d5c595521de /apps/web | |
| parent | 3ef17cecb44f8e4fd2bf64afd229d0175a0d3f38 (diff) | |
| download | opencut-66da1e20d35dca5b9168cab9e2f3555c210a7116.tar.gz | |
feat: remove cascade deletion logic when removing media
Diffstat (limited to 'apps/web')
| -rw-r--r-- | apps/web/src/stores/media-store.ts | 21 |
1 files changed, 0 insertions, 21 deletions
diff --git a/apps/web/src/stores/media-store.ts b/apps/web/src/stores/media-store.ts index 40aa2c66..76cdd638 100644 --- a/apps/web/src/stores/media-store.ts +++ b/apps/web/src/stores/media-store.ts @@ -193,27 +193,6 @@ export const useMediaStore = create<MediaStore>((set, get) => ({ } } - // CASCADE DELETION - Remove timeline elements that use this media - const { tracks, removeElementFromTrack, removeTrack } = - useTimelineStore.getState(); - - tracks.forEach((track) => { - const elementsToRemove = track.elements.filter( - (element) => element.type === "media" && element.mediaId === id - ); - elementsToRemove.forEach((element) => { - removeElementFromTrack(track.id, element.id); - }); - }); - - // Clean up empty tracks after removing elements - const updatedTracks = useTimelineStore.getState().tracks; - updatedTracks.forEach((track) => { - if (track.elements.length === 0) { - removeTrack(track.id); - } - }); - // Remove from local state immediately set((state) => ({ mediaItems: state.mediaItems.filter((media) => media.id !== id), |
