diff --git a/server/storage.ts b/server/storage.ts index 543d2a5..7043663 100644 --- a/server/storage.ts +++ b/server/storage.ts @@ -62,7 +62,7 @@ export class DatabaseStorage implements IStorage { like(videos.title, searchTerm), like(videos.description, searchTerm) ) - ); + ) as any; } const result = await query @@ -110,7 +110,7 @@ export class DatabaseStorage implements IStorage { like(videos.title, searchTerm), like(videos.description, searchTerm) ) - ); + ) as any; } const result = await query; @@ -119,7 +119,7 @@ export class DatabaseStorage implements IStorage { async deleteVideo(id: string): Promise { const result = await db.delete(videos).where(eq(videos.id, id)); - return result.rowCount > 0; + return (result.rowCount ?? 0) > 0; } // User operations @@ -221,7 +221,7 @@ export class DatabaseStorage implements IStorage { async deleteCategory(id: string): Promise { const result = await db.delete(categories).where(eq(categories.id, id)); - return result.rowCount > 0; + return (result.rowCount ?? 0) > 0; } // Tag operations @@ -365,8 +365,16 @@ export class MemStorage implements IStorage { videoUrlIframe: null, tags: [], isPublic: true, + views: video.views || 0, createdAt: new Date(), - updatedAt: new Date() + updatedAt: new Date(), + uploadStatus: video.uploadStatus || "completed", + originalFileName: video.originalFileName || null, + fileSize: video.fileSize || null, + bitrate: video.bitrate || null, + resolution: video.resolution || null, + format: video.format || null, + encoding: video.encoding || null }; this.videos.set(id, fullVideo); }); @@ -406,6 +414,14 @@ export class MemStorage implements IStorage { videoUrlIframe: null, tags: video.tags || [], isPublic: video.isPublic ?? true, + views: video.views || 0, + uploadStatus: video.uploadStatus || "completed", + originalFileName: video.originalFileName || null, + fileSize: video.fileSize || null, + bitrate: video.bitrate || null, + resolution: video.resolution || null, + format: video.format || null, + encoding: video.encoding || null, createdAt: new Date(), updatedAt: new Date() }; @@ -464,6 +480,9 @@ export class MemStorage implements IStorage { ...user, id, password: hashedPassword, + firstName: user.firstName || null, + lastName: user.lastName || null, + profileImageUrl: user.profileImageUrl || null, isAdmin: user.isAdmin ?? false, createdAt: new Date(), updatedAt: new Date() @@ -503,6 +522,11 @@ export class MemStorage implements IStorage { const fullUpload: VideoUpload = { ...upload, id, + uploadStatus: upload.uploadStatus || "uploading", + uploadProgress: upload.uploadProgress || 0, + videoId: upload.videoId || null, + errorMessage: upload.errorMessage || null, + uploadUrl: upload.uploadUrl || null, createdAt: new Date(), updatedAt: new Date() }; @@ -544,6 +568,8 @@ export class MemStorage implements IStorage { const fullCategory: Category = { ...category, id, + description: category.description || null, + color: category.color || "#000000", createdAt: new Date() }; this.categoriesMap.set(id, fullCategory);