diff options
| author | Sanjit K <skomputeruser@gmail.com> | 2025-07-12 00:14:03 -0500 |
|---|---|---|
| committer | Sanjit K <skomputeruser@gmail.com> | 2025-07-12 00:14:03 -0500 |
| commit | 799fd2981abe010a5e4362b5c64951be5d0902c0 (patch) | |
| tree | f31d608bdbe681a7b0090929af4230aa94083049 /apps/web/src/stores/timeline-store.ts | |
| parent | fd017d6aca1a17edc4614b4bf07091eb41f8d310 (diff) | |
| download | opencut-799fd2981abe010a5e4362b5c64951be5d0902c0.tar.gz | |
fixed: [BUG] crypto.randomUUID is not a function Runtime Error #205. Added fallback function with manual UUID generation if crypto.randomUUID() was not available.
Diffstat (limited to 'apps/web/src/stores/timeline-store.ts')
| -rw-r--r-- | apps/web/src/stores/timeline-store.ts | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/apps/web/src/stores/timeline-store.ts b/apps/web/src/stores/timeline-store.ts index 8c934392..bc47e093 100644 --- a/apps/web/src/stores/timeline-store.ts +++ b/apps/web/src/stores/timeline-store.ts @@ -13,6 +13,7 @@ import { useEditorStore } from "./editor-store"; import { useMediaStore, getMediaAspectRatio } from "./media-store"; import { storageService } from "@/lib/storage/storage-service"; import { useProjectStore } from "./project-store"; +import { generateUUID } from "@/lib/utils"; // Helper function to manage element naming with suffixes const getElementNameWithSuffix = ( @@ -279,7 +280,7 @@ export const useTimelineStore = create<TimelineStore>((set, get) => { : "Track"; const newTrack: TimelineTrack = { - id: crypto.randomUUID(), + id: generateUUID(), name: trackName, type, elements: [], @@ -304,7 +305,7 @@ export const useTimelineStore = create<TimelineStore>((set, get) => { : "Track"; const newTrack: TimelineTrack = { - id: crypto.randomUUID(), + id: generateUUID(), name: trackName, type, elements: [], @@ -363,7 +364,7 @@ export const useTimelineStore = create<TimelineStore>((set, get) => { const newElement: TimelineElement = { ...elementData, - id: crypto.randomUUID(), + id: generateUUID(), startTime: elementData.startTime || 0, trimStart: 0, trimEnd: 0, @@ -556,7 +557,7 @@ export const useTimelineStore = create<TimelineStore>((set, get) => { const secondDuration = element.duration - element.trimStart - element.trimEnd - relativeTime; - const secondElementId = crypto.randomUUID(); + const secondElementId = generateUUID(); updateTracksAndSave( get()._tracks.map((track) => @@ -682,7 +683,7 @@ export const useTimelineStore = create<TimelineStore>((set, get) => { // Find existing audio track or prepare to create one const existingAudioTrack = _tracks.find((t) => t.type === "audio"); - const audioElementId = crypto.randomUUID(); + const audioElementId = generateUUID(); if (existingAudioTrack) { // Add audio element to existing audio track @@ -706,7 +707,7 @@ export const useTimelineStore = create<TimelineStore>((set, get) => { } else { // Create new audio track with the audio element in a single atomic update const newAudioTrack: TimelineTrack = { - id: crypto.randomUUID(), + id: generateUUID(), name: "Audio Track", type: "audio", elements: [ |
