diff --git a/core/src/utils/animation/old-animation/index.ts b/core/src/utils/animation/old-animation/index.ts index afecd60466..19fd3d5312 100644 --- a/core/src/utils/animation/old-animation/index.ts +++ b/core/src/utils/animation/old-animation/index.ts @@ -4,7 +4,7 @@ import { Animator } from './animator'; export const create = (animationBuilder?: AnimationBuilder, baseEl?: any, opts?: any): Promise => { if (animationBuilder) { - return animationBuilder(baseEl, opts); + return animationBuilder(Animator as any, baseEl, opts); } return Promise.resolve(new Animator() as any); }; diff --git a/core/src/utils/overlays.ts b/core/src/utils/overlays.ts index 1b0a732726..9477528bae 100644 --- a/core/src/utils/overlays.ts +++ b/core/src/utils/overlays.ts @@ -190,11 +190,15 @@ const overlayAnimation = async ( /** * TODO: Remove AnimationBuilder */ - const animation = await import('./animation/old-animation').then(mod => mod.create(animationBuilder as AnimationBuilder, aniRoot, opts)); - const isAnimationBuilder = (animation as any).fill === undefined; - - if (!isAnimationBuilder) { - (animation as any).fill('both'); + let animation; + let isAnimationBuilder = true; + try { + const mod = await import('./animation/old-animation'); + animation = await mod.create(animationBuilder as AnimationBuilder, aniRoot, opts); + } catch (err) { + animation = (animationBuilder as IonicAnimationInterface)(aniRoot, opts); + animation.fill('both'); + isAnimationBuilder = false; } overlay.animation = animation; diff --git a/core/src/utils/transition/index.ts b/core/src/utils/transition/index.ts index 2f8f940359..da153894be 100644 --- a/core/src/utils/transition/index.ts +++ b/core/src/utils/transition/index.ts @@ -85,7 +85,8 @@ const animation = async (animationBuilder: IonicAnimationInterface | AnimationBu let trans: Animation | IonicAnimation; try { - trans = await import('../animation/old-animation').then(mod => mod.create(animationBuilder as AnimationBuilder, opts.baseEl, opts)); + const mod = await import('../animation/old-animation'); + trans = await mod.create(animationBuilder as AnimationBuilder, opts.baseEl, opts); } catch (err) { trans = (animationBuilder as IonicAnimationInterface)(opts.baseEl, opts); }