Files
form_metacase/node_modules/@angular/platform-browser/fesm2022/animations-async.mjs.map
T

1 line
22 KiB
Plaintext
Raw Normal View History

2026-03-14 20:41:55 +00:00
{"version":3,"file":"animations-async.mjs","sources":["../../../../../k8-fastbuild-ST-fdfa778d11ba/bin/packages/platform-browser/animations/async/src/async_animation_renderer.ts","../../../../../k8-fastbuild-ST-fdfa778d11ba/bin/packages/platform-browser/animations/async/src/providers.ts"],"sourcesContent":["/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.dev/license\n */\n\nimport {\n ɵAnimationEngine as AnimationEngine,\n ɵAnimationRenderer as AnimationRenderer,\n ɵAnimationRendererFactory as AnimationRendererFactory,\n} from '@angular/animations/browser';\nimport {\n ɵAnimationRendererType as AnimationRendererType,\n ɵChangeDetectionScheduler as ChangeDetectionScheduler,\n inject,\n Injectable,\n InjectionToken,\n Injector,\n NgZone,\n ɵNotificationSource as NotificationSource,\n OnDestroy,\n Renderer2,\n RendererFactory2,\n RendererStyleFlags2,\n RendererType2,\n ɵRuntimeError as RuntimeError,\n type ListenerOptions,\n} from '@angular/core';\nimport {ɵRuntimeErrorCode as RuntimeErrorCode} from '../../../index';\n\nconst ANIMATION_PREFIX = '@';\n\n@Injectable()\nexport class AsyncAnimationRendererFactory implements OnDestroy, RendererFactory2 {\n private _rendererFactoryPromise: Promise<AnimationRendererFactory> | null = null;\n private scheduler: ChangeDetectionScheduler | null = null;\n private readonly injector = inject(Injector);\n private readonly loadingSchedulerFn = inject(ɵASYNC_ANIMATION_LOADING_SCHEDULER_FN, {\n optional: true,\n });\n private _engine?: AnimationEngine;\n\n /**\n *\n * @param moduleImpl allows to provide a mock implmentation (or will load the animation module)\n */\n constructor(\n private doc: Document,\n private delegate: RendererFactory2,\n private zone: NgZone,\n private animationType: 'animations' | 'noop',\n private moduleImpl?: Promise<{\n ɵcreateEngine: (type: 'animations' | 'noop', doc: Document) => AnimationEngine;\n ɵAnimationRendererFactory: typeof AnimationRendererFactory;\n }>,\n ) {}\n\n /** @docs-private */\n ngOnDestroy(): void {\n // When the root view is removed, the renderer defers the actual work to the\n // `TransitionAnimationEngine` to do this, and the `TransitionAnimationEngine` doesn't actually\n // remove the DOM node, but just calls `markElementAsRemoved()`. The actual DOM node is not\n // removed until `TransitionAnimationEngine` \"flushes\".\n // Note: we already flush on destroy within the `InjectableAnimationEngine`. The injectable\n // engine is not provided when async animations are used.\n this._engine?.flush();\n }\n\n /**\n * @internal\n */\n private loadImpl(): Promise<AnimationRendererFactory> {\n // Note on the `.then(m => m)` part below: Closure compiler optimizations in g3 require\n // `.then` to be present for a dynamic import (or an import should be `await`ed) to detect\n // the set of imported symbols.\n const loadFn = () => this.moduleImpl ?? import('@angular/animations/browser').then((m) => m);\n\n let moduleImplPromise: typeof this.moduleImpl;\n if (this.loadingSchedulerFn) {\n moduleImplPromise = this.loadingSchedulerFn(loadFn);\n } else {\n moduleImplPromise = loadFn();\n }\n\n return moduleImplPromise\n .catch((e) => {\n throw new RuntimeError(\n RuntimeErrorCode.ANIMATION_RENDERER_ASYNC_LOADING_FAILURE,\n (typeof ngDevMode === 'undefined' || ngDevMode) &&\n 'Async loading for animations package was ' +\n 'enabled, but loading failed. Angular falls back to using regular rendering. ' +\n \"No animations will be displayed and their styles won't be applied.\",\n );\n })\n .then(({ɵcreateEngine, ɵAnimationRendererFactory}) => {\n // We can't create the renderer yet because we might need the hostElement and the type\n // Both are provided in createRenderer().\n