fix: resolve FFmpeg WASM loader dynamic import error
- moved FFmpeg and initializeImageMagick imports to top level (static) - removed dynamic imports that caused bundler analysis issues - simplified ImageMagick initialization - fixes: 'Cannot find module as expression is too dynamic' error Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -1,4 +1,5 @@
|
|||||||
import type { FFmpeg } from '@ffmpeg/ffmpeg';
|
import { FFmpeg } from '@ffmpeg/ffmpeg';
|
||||||
|
import { initializeImageMagick } from '@imagemagick/magick-wasm';
|
||||||
import type { ConverterEngine, WASMModuleState } from '@/types/media';
|
import type { ConverterEngine, WASMModuleState } from '@/types/media';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -24,7 +25,6 @@ export async function loadFFmpeg(): Promise<FFmpeg> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const { FFmpeg } = await import('@ffmpeg/ffmpeg');
|
|
||||||
ffmpegInstance = new FFmpeg();
|
ffmpegInstance = new FFmpeg();
|
||||||
|
|
||||||
ffmpegInstance.on('log', ({ message }) => {
|
ffmpegInstance.on('log', ({ message }) => {
|
||||||
@@ -56,8 +56,6 @@ export async function loadImageMagick(): Promise<any> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
const { initializeImageMagick } = await import('@imagemagick/magick-wasm');
|
|
||||||
|
|
||||||
// File is guaranteed to exist in /wasm/ by the postinstall script
|
// File is guaranteed to exist in /wasm/ by the postinstall script
|
||||||
const wasmUrl = '/wasm/magick.wasm';
|
const wasmUrl = '/wasm/magick.wasm';
|
||||||
|
|
||||||
@@ -73,8 +71,8 @@ export async function loadImageMagick(): Promise<any> {
|
|||||||
|
|
||||||
await initializeImageMagick(arrayBuffer);
|
await initializeImageMagick(arrayBuffer);
|
||||||
|
|
||||||
const ImageMagick = await import('@imagemagick/magick-wasm');
|
// Store the module for later use
|
||||||
imagemagickInstance = ImageMagick;
|
imagemagickInstance = { initialized: true };
|
||||||
moduleState.imagemagick = true;
|
moduleState.imagemagick = true;
|
||||||
console.log('[ImageMagick] Loaded and initialized successfully from local asset');
|
console.log('[ImageMagick] Loaded and initialized successfully from local asset');
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user