Skip to content

Commit 166893c

Browse files
chatman-mediaclaude
andcommitted
fix(typescript): исправлены TypeScript ошибки в браузере и эффектах
- Исправлен доступ к MediaResource/MusicResource path через file.path - Исправлен тип size в MediaFile с string на number (в байтах) - Обновлена генерация превью эффектов под новую структуру BaseEffect - effect.type → effect.processingType - effect.labels → null (устаревшее) - effect.ffmpegCommand → effect.processors.ffmpeg.filter() - effect.cssFilter → effect.processors.css.filter() 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 2c5170d commit 166893c

File tree

3 files changed

+33
-12
lines changed

3 files changed

+33
-12
lines changed

src/features/browser/components/layout/media-status-bar-wrapper.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,7 @@ export function MediaStatusBarWrapper() {
3333
name: mediaInfo.name,
3434
videoCodec,
3535
startTime: Date.now() / 1000,
36-
size:
37-
bitrate && mediaInfo.duration ? `${Math.round((bitrate * mediaInfo.duration) / 8 / 1024 / 1024)}MB` : "0MB",
36+
size: bitrate && mediaInfo.duration ? Math.round((bitrate * mediaInfo.duration) / 8) : 0,
3837
duration: mediaInfo.duration ?? 0,
3938
thumbnailPath: mediaInfo.thumbnailPath,
4039
type: mediaInfo.type.toLowerCase(),
@@ -68,8 +67,8 @@ export function MediaStatusBarWrapper() {
6867
// Включаем и mediaResources (видео/изображения) и musicResources (аудио)
6968
const addedFilesPaths = useMemo(() => {
7069
const allResourcePaths = [
71-
...(mediaResources || []).map((r) => r.path),
72-
...(musicResources || []).map((r) => r.path),
70+
...(mediaResources || []).map((r) => r.file.path),
71+
...(musicResources || []).map((r) => r.file.path),
7372
]
7473
return new Set(allResourcePaths)
7574
}, [mediaResources, musicResources])

src/features/browser/hooks/use-bulk-media-actions.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ export function useBulkMediaActions() {
1818
*/
1919
const addAllVideoFiles = useCallback(
2020
async (allMedia: MediaFile[]) => {
21-
const addedPaths = new Set(mediaResources.map((r) => r.path))
21+
const addedPaths = new Set(mediaResources.map((r) => r.file.path))
2222
const videoFiles = allMedia.filter((file) => file.isVideo && !addedPaths.has(file.path))
2323

2424
logger.info(`Adding ${videoFiles.length} video files to resources`)
@@ -39,7 +39,7 @@ export function useBulkMediaActions() {
3939
*/
4040
const addAllAudioFiles = useCallback(
4141
async (allMedia: MediaFile[]) => {
42-
const addedPaths = new Set(mediaResources.map((r) => r.path))
42+
const addedPaths = new Set(mediaResources.map((r) => r.file.path))
4343
const audioFiles = allMedia.filter((file) => file.isAudio && !addedPaths.has(file.path))
4444

4545
logger.info(`Adding ${audioFiles.length} audio files to resources`)
@@ -60,7 +60,7 @@ export function useBulkMediaActions() {
6060
*/
6161
const addDateFiles = useCallback(
6262
async (files: MediaFile[]) => {
63-
const addedPaths = new Set(mediaResources.map((r) => r.path))
63+
const addedPaths = new Set(mediaResources.map((r) => r.file.path))
6464
const filesToAdd = files.filter((file) => !addedPaths.has(file.path))
6565

6666
logger.info(`Adding ${filesToAdd.length} files for date to resources`)
@@ -81,7 +81,7 @@ export function useBulkMediaActions() {
8181
*/
8282
const addAllFiles = useCallback(
8383
async (allMedia: MediaFile[]) => {
84-
const addedPaths = new Set(mediaResources.map((r) => r.path))
84+
const addedPaths = new Set(mediaResources.map((r) => r.file.path))
8585
const filesToAdd = allMedia.filter((file) => !addedPaths.has(file.path))
8686

8787
logger.info(`Adding ${filesToAdd.length} files to resources`)

src/features/effects/utils/generate-effect-previews.ts

Lines changed: 26 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -69,13 +69,13 @@ export async function generateEffectPreview(effect: BaseEffect, config: EffectPr
6969
effects: [
7070
{
7171
id: `${effect.id}-preview`,
72-
effect_type: effect.type || "Custom",
72+
effect_type: effect.processingType || "Custom",
7373
name: effect.name,
7474
category: effect.category || null,
7575
complexity: effect.complexity || null,
7676
tags: effect.tags || [],
7777
description: effect.description || null,
78-
labels: effect.labels || null,
78+
labels: null,
7979
enabled: true,
8080
parameters:
8181
effect.parameters?.reduce(
@@ -87,8 +87,30 @@ export async function generateEffectPreview(effect: BaseEffect, config: EffectPr
8787
) || {},
8888
start_time: null,
8989
end_time: null,
90-
ffmpeg_command: effect.ffmpegCommand || null,
91-
css_filter: effect.cssFilter || null,
90+
ffmpeg_command:
91+
effect.processors?.ffmpeg?.filter
92+
? effect.processors.ffmpeg.filter(
93+
effect.parameters?.reduce(
94+
(acc, param) => {
95+
acc[param.id] = param.defaultValue
96+
return acc
97+
},
98+
{} as Record<string, any>,
99+
) || {},
100+
)
101+
: null,
102+
css_filter:
103+
effect.processors?.css?.filter
104+
? effect.processors.css.filter(
105+
effect.parameters?.reduce(
106+
(acc, param) => {
107+
acc[param.id] = param.defaultValue
108+
return acc
109+
},
110+
{} as Record<string, any>,
111+
) || {},
112+
)
113+
: null,
92114
preview_path: null,
93115
presets: null,
94116
},

0 commit comments

Comments
 (0)