{"version":3,"sources":["node_modules/@angular/animations/fesm2022/animations.mjs"],"sourcesContent":["/**\n * @license Angular v17.1.1\n * (c) 2010-2022 Google LLC. https://angular.io/\n * License: MIT\n */\n\nimport { DOCUMENT } from '@angular/common';\nimport * as i0 from '@angular/core';\nimport { inject, Injectable, ANIMATION_MODULE_TYPE, ViewEncapsulation, ɵRuntimeError, Inject } from '@angular/core';\n\n/**\n * @description Constants for the categories of parameters that can be defined for animations.\n *\n * A corresponding function defines a set of parameters for each category, and\n * collects them into a corresponding `AnimationMetadata` object.\n *\n * @publicApi\n */\nvar AnimationMetadataType;\n(function (AnimationMetadataType) {\n /**\n * Associates a named animation state with a set of CSS styles.\n * See [`state()`](api/animations/state)\n */\n AnimationMetadataType[AnimationMetadataType[\"State\"] = 0] = \"State\";\n /**\n * Data for a transition from one animation state to another.\n * See `transition()`\n */\n AnimationMetadataType[AnimationMetadataType[\"Transition\"] = 1] = \"Transition\";\n /**\n * Contains a set of animation steps.\n * See `sequence()`\n */\n AnimationMetadataType[AnimationMetadataType[\"Sequence\"] = 2] = \"Sequence\";\n /**\n * Contains a set of animation steps.\n * See `{@link animations/group group()}`\n */\n AnimationMetadataType[AnimationMetadataType[\"Group\"] = 3] = \"Group\";\n /**\n * Contains an animation step.\n * See `animate()`\n */\n AnimationMetadataType[AnimationMetadataType[\"Animate\"] = 4] = \"Animate\";\n /**\n * Contains a set of animation steps.\n * See `keyframes()`\n */\n AnimationMetadataType[AnimationMetadataType[\"Keyframes\"] = 5] = \"Keyframes\";\n /**\n * Contains a set of CSS property-value pairs into a named style.\n * See `style()`\n */\n AnimationMetadataType[AnimationMetadataType[\"Style\"] = 6] = \"Style\";\n /**\n * Associates an animation with an entry trigger that can be attached to an element.\n * See `trigger()`\n */\n AnimationMetadataType[AnimationMetadataType[\"Trigger\"] = 7] = \"Trigger\";\n /**\n * Contains a re-usable animation.\n * See `animation()`\n */\n AnimationMetadataType[AnimationMetadataType[\"Reference\"] = 8] = \"Reference\";\n /**\n * Contains data to use in executing child animations returned by a query.\n * See `animateChild()`\n */\n AnimationMetadataType[AnimationMetadataType[\"AnimateChild\"] = 9] = \"AnimateChild\";\n /**\n * Contains animation parameters for a re-usable animation.\n * See `useAnimation()`\n */\n AnimationMetadataType[AnimationMetadataType[\"AnimateRef\"] = 10] = \"AnimateRef\";\n /**\n * Contains child-animation query data.\n * See `query()`\n */\n AnimationMetadataType[AnimationMetadataType[\"Query\"] = 11] = \"Query\";\n /**\n * Contains data for staggering an animation sequence.\n * See `stagger()`\n */\n AnimationMetadataType[AnimationMetadataType[\"Stagger\"] = 12] = \"Stagger\";\n})(AnimationMetadataType || (AnimationMetadataType = {}));\n/**\n * Specifies automatic styling.\n *\n * @publicApi\n */\nconst AUTO_STYLE = '*';\n/**\n * Creates a named animation trigger, containing a list of [`state()`](api/animations/state)\n * and `transition()` entries to be evaluated when the expression\n * bound to the trigger changes.\n *\n * @param name An identifying string.\n * @param definitions An animation definition object, containing an array of\n * [`state()`](api/animations/state) and `transition()` declarations.\n *\n * @return An object that encapsulates the trigger data.\n *\n * @usageNotes\n * Define an animation trigger in the `animations` section of `@Component` metadata.\n * In the template, reference the trigger by name and bind it to a trigger expression that\n * evaluates to a defined animation state, using the following format:\n *\n * `[@triggerName]=\"expression\"`\n *\n * Animation trigger bindings convert all values to strings, and then match the\n * previous and current values against any linked transitions.\n * Booleans can be specified as `1` or `true` and `0` or `false`.\n *\n * ### Usage Example\n *\n * The following example creates an animation trigger reference based on the provided\n * name value.\n * The provided animation value is expected to be an array consisting of state and\n * transition declarations.\n *\n * ```typescript\n * @Component({\n * selector: \"my-component\",\n * templateUrl: \"my-component-tpl.html\",\n * animations: [\n * trigger(\"myAnimationTrigger\", [\n * state(...),\n * state(...),\n * transition(...),\n * transition(...)\n * ])\n * ]\n * })\n * class MyComponent {\n * myStatusExp = \"something\";\n * }\n * ```\n *\n * The template associated with this component makes use of the defined trigger\n * by binding to an element within its template code.\n *\n * ```html\n * \n *
[AnimationBuilder.build](api/animations/AnimationBuilder#build)()
method\n * to create a programmatic animation. The method returns an `AnimationFactory` instance.\n *\n * 2. Use the factory object to create an `AnimationPlayer` and attach it to a DOM element.\n *\n * 3. Use the player object to control the animation programmatically.\n *\n * For example:\n *\n * ```ts\n * // import the service from BrowserAnimationsModule\n * import {AnimationBuilder} from '@angular/animations';\n * // require the service as a dependency\n * class MyCmp {\n * constructor(private _builder: AnimationBuilder) {}\n *\n * makeAnimation(element: any) {\n * // first define a reusable animation\n * const myAnimation = this._builder.build([\n * style({ width: 0 }),\n * animate(1000, style({ width: '100px' }))\n * ]);\n *\n * // use the returned factory object to create a player\n * const player = myAnimation.create(element);\n *\n * player.play();\n * }\n * }\n * ```\n *\n * @publicApi\n */\nclass AnimationBuilder {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.1.1\", ngImport: i0, type: AnimationBuilder, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"17.1.1\", ngImport: i0, type: AnimationBuilder, providedIn: 'root', useFactory: () => inject(BrowserAnimationBuilder) }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.1.1\", ngImport: i0, type: AnimationBuilder, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root', useFactory: () => inject(BrowserAnimationBuilder) }]\n }] });\n/**\n * A factory object returned from the\n * [AnimationBuilder.build](api/animations/AnimationBuilder#build)()
\n * method.\n *\n * @publicApi\n */\nclass AnimationFactory {\n}\nclass BrowserAnimationBuilder extends AnimationBuilder {\n constructor(rootRenderer, doc) {\n super();\n this.animationModuleType = inject(ANIMATION_MODULE_TYPE, { optional: true });\n this._nextAnimationId = 0;\n const typeData = {\n id: '0',\n encapsulation: ViewEncapsulation.None,\n styles: [],\n data: { animation: [] },\n };\n this._renderer = rootRenderer.createRenderer(doc.body, typeData);\n if (this.animationModuleType === null && !isAnimationRenderer(this._renderer)) {\n // We only support AnimationRenderer & DynamicDelegationRenderer for this AnimationBuilder\n throw new ɵRuntimeError(3600 /* RuntimeErrorCode.BROWSER_ANIMATION_BUILDER_INJECTED_WITHOUT_ANIMATIONS */, (typeof ngDevMode === 'undefined' || ngDevMode) &&\n 'Angular detected that the `AnimationBuilder` was injected, but animation support was not enabled. ' +\n 'Please make sure that you enable animations in your application by calling `provideAnimations()` or `provideAnimationsAsync()` function.');\n }\n }\n build(animation) {\n const id = this._nextAnimationId;\n this._nextAnimationId++;\n const entry = Array.isArray(animation) ? sequence(animation) : animation;\n issueAnimationCommand(this._renderer, null, id, 'register', [entry]);\n return new BrowserAnimationFactory(id, this._renderer);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"17.1.1\", ngImport: i0, type: BrowserAnimationBuilder, deps: [{ token: i0.RendererFactory2 }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"17.1.1\", ngImport: i0, type: BrowserAnimationBuilder, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"17.1.1\", ngImport: i0, type: BrowserAnimationBuilder, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], ctorParameters: () => [{ type: i0.RendererFactory2 }, { type: Document, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }] });\nclass BrowserAnimationFactory extends AnimationFactory {\n constructor(_id, _renderer) {\n super();\n this._id = _id;\n this._renderer = _renderer;\n }\n create(element, options) {\n return new RendererAnimationPlayer(this._id, element, options || {}, this._renderer);\n }\n}\nclass RendererAnimationPlayer {\n constructor(id, element, options, _renderer) {\n this.id = id;\n this.element = element;\n this._renderer = _renderer;\n this.parentPlayer = null;\n this._started = false;\n this.totalTime = 0;\n this._command('create', options);\n }\n _listen(eventName, callback) {\n return this._renderer.listen(this.element, `@@${this.id}:${eventName}`, callback);\n }\n _command(command, ...args) {\n issueAnimationCommand(this._renderer, this.element, this.id, command, args);\n }\n onDone(fn) {\n this._listen('done', fn);\n }\n onStart(fn) {\n this._listen('start', fn);\n }\n onDestroy(fn) {\n this._listen('destroy', fn);\n }\n init() {\n this._command('init');\n }\n hasStarted() {\n return this._started;\n }\n play() {\n this._command('play');\n this._started = true;\n }\n pause() {\n this._command('pause');\n }\n restart() {\n this._command('restart');\n }\n finish() {\n this._command('finish');\n }\n destroy() {\n this._command('destroy');\n }\n reset() {\n this._command('reset');\n this._started = false;\n }\n setPosition(p) {\n this._command('setPosition', p);\n }\n getPosition() {\n return unwrapAnimationRenderer(this._renderer)?.engine?.players[this.id]?.getPosition() ?? 0;\n }\n}\nfunction issueAnimationCommand(renderer, element, id, command, args) {\n renderer.setProperty(element, `@@${id}:${command}`, args);\n}\n/**\n * The following 2 methods cannot reference their correct types (AnimationRenderer &\n * DynamicDelegationRenderer) since this would introduce a import cycle.\n */\nfunction unwrapAnimationRenderer(renderer) {\n const type = renderer.ɵtype;\n if (type === 0 /* AnimationRendererType.Regular */) {\n return renderer;\n }\n else if (type === 1 /* AnimationRendererType.Delegated */) {\n return renderer.animationRenderer;\n }\n return null;\n}\nfunction isAnimationRenderer(renderer) {\n const type = renderer.ɵtype;\n return type === 0 /* AnimationRendererType.Regular */ || type === 1 /* AnimationRendererType.Delegated */;\n}\n\n/**\n * An empty programmatic controller for reusable animations.\n * Used internally when animations are disabled, to avoid\n * checking for the null case when an animation player is expected.\n *\n * @see {@link animate}\n * @see {@link AnimationPlayer}\n * @see {@link ɵAnimationGroupPlayer AnimationGroupPlayer}\n *\n * @publicApi\n */\nclass NoopAnimationPlayer {\n constructor(duration = 0, delay = 0) {\n this._onDoneFns = [];\n this._onStartFns = [];\n this._onDestroyFns = [];\n this._originalOnDoneFns = [];\n this._originalOnStartFns = [];\n this._started = false;\n this._destroyed = false;\n this._finished = false;\n this._position = 0;\n this.parentPlayer = null;\n this.totalTime = duration + delay;\n }\n _onFinish() {\n if (!this._finished) {\n this._finished = true;\n this._onDoneFns.forEach((fn) => fn());\n this._onDoneFns = [];\n }\n }\n onStart(fn) {\n this._originalOnStartFns.push(fn);\n this._onStartFns.push(fn);\n }\n onDone(fn) {\n this._originalOnDoneFns.push(fn);\n this._onDoneFns.push(fn);\n }\n onDestroy(fn) {\n this._onDestroyFns.push(fn);\n }\n hasStarted() {\n return this._started;\n }\n init() { }\n play() {\n if (!this.hasStarted()) {\n this._onStart();\n this.triggerMicrotask();\n }\n this._started = true;\n }\n /** @internal */\n triggerMicrotask() {\n queueMicrotask(() => this._onFinish());\n }\n _onStart() {\n this._onStartFns.forEach((fn) => fn());\n this._onStartFns = [];\n }\n pause() { }\n restart() { }\n finish() {\n this._onFinish();\n }\n destroy() {\n if (!this._destroyed) {\n this._destroyed = true;\n if (!this.hasStarted()) {\n this._onStart();\n }\n this.finish();\n this._onDestroyFns.forEach((fn) => fn());\n this._onDestroyFns = [];\n }\n }\n reset() {\n this._started = false;\n this._finished = false;\n this._onStartFns = this._originalOnStartFns;\n this._onDoneFns = this._originalOnDoneFns;\n }\n setPosition(position) {\n this._position = this.totalTime ? position * this.totalTime : 1;\n }\n getPosition() {\n return this.totalTime ? this._position / this.totalTime : 1;\n }\n /** @internal */\n triggerCallback(phaseName) {\n const methods = phaseName == 'start' ? this._onStartFns : this._onDoneFns;\n methods.forEach((fn) => fn());\n methods.length = 0;\n }\n}\n\n/**\n * A programmatic controller for a group of reusable animations.\n * Used internally to control animations.\n *\n * @see {@link AnimationPlayer}\n * @see {@link animations/group group}\n *\n */\nclass AnimationGroupPlayer {\n constructor(_players) {\n this._onDoneFns = [];\n this._onStartFns = [];\n this._finished = false;\n this._started = false;\n this._destroyed = false;\n this._onDestroyFns = [];\n this.parentPlayer = null;\n this.totalTime = 0;\n this.players = _players;\n let doneCount = 0;\n let destroyCount = 0;\n let startCount = 0;\n const total = this.players.length;\n if (total == 0) {\n queueMicrotask(() => this._onFinish());\n }\n else {\n this.players.forEach((player) => {\n player.onDone(() => {\n if (++doneCount == total) {\n this._onFinish();\n }\n });\n player.onDestroy(() => {\n if (++destroyCount == total) {\n this._onDestroy();\n }\n });\n player.onStart(() => {\n if (++startCount == total) {\n this._onStart();\n }\n });\n });\n }\n this.totalTime = this.players.reduce((time, player) => Math.max(time, player.totalTime), 0);\n }\n _onFinish() {\n if (!this._finished) {\n this._finished = true;\n this._onDoneFns.forEach((fn) => fn());\n this._onDoneFns = [];\n }\n }\n init() {\n this.players.forEach((player) => player.init());\n }\n onStart(fn) {\n this._onStartFns.push(fn);\n }\n _onStart() {\n if (!this.hasStarted()) {\n this._started = true;\n this._onStartFns.forEach((fn) => fn());\n this._onStartFns = [];\n }\n }\n onDone(fn) {\n this._onDoneFns.push(fn);\n }\n onDestroy(fn) {\n this._onDestroyFns.push(fn);\n }\n hasStarted() {\n return this._started;\n }\n play() {\n if (!this.parentPlayer) {\n this.init();\n }\n this._onStart();\n this.players.forEach((player) => player.play());\n }\n pause() {\n this.players.forEach((player) => player.pause());\n }\n restart() {\n this.players.forEach((player) => player.restart());\n }\n finish() {\n this._onFinish();\n this.players.forEach((player) => player.finish());\n }\n destroy() {\n this._onDestroy();\n }\n _onDestroy() {\n if (!this._destroyed) {\n this._destroyed = true;\n this._onFinish();\n this.players.forEach((player) => player.destroy());\n this._onDestroyFns.forEach((fn) => fn());\n this._onDestroyFns = [];\n }\n }\n reset() {\n this.players.forEach((player) => player.reset());\n this._destroyed = false;\n this._finished = false;\n this._started = false;\n }\n setPosition(p) {\n const timeAtPosition = p * this.totalTime;\n this.players.forEach((player) => {\n const position = player.totalTime ? Math.min(1, timeAtPosition / player.totalTime) : 1;\n player.setPosition(position);\n });\n }\n getPosition() {\n const longestPlayer = this.players.reduce((longestSoFar, player) => {\n const newPlayerIsLongest = longestSoFar === null || player.totalTime > longestSoFar.totalTime;\n return newPlayerIsLongest ? player : longestSoFar;\n }, null);\n return longestPlayer != null ? longestPlayer.getPosition() : 0;\n }\n beforeDestroy() {\n this.players.forEach((player) => {\n if (player.beforeDestroy) {\n player.beforeDestroy();\n }\n });\n }\n /** @internal */\n triggerCallback(phaseName) {\n const methods = phaseName == 'start' ? this._onStartFns : this._onDoneFns;\n methods.forEach((fn) => fn());\n methods.length = 0;\n }\n}\n\nconst ɵPRE_STYLE = '!';\n\n/**\n * @module\n * @description\n * Entry point for all animation APIs of the animation package.\n */\n\n/**\n * @module\n * @description\n * Entry point for all public APIs of this package.\n */\n\n// This file is not used to build this module. It is only used during editing\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { AUTO_STYLE, AnimationBuilder, AnimationFactory, AnimationMetadataType, NoopAnimationPlayer, animate, animateChild, animation, group, keyframes, query, sequence, stagger, state, style, transition, trigger, useAnimation, AnimationGroupPlayer as ɵAnimationGroupPlayer, BrowserAnimationBuilder as ɵBrowserAnimationBuilder, ɵPRE_STYLE };\n\n"],"mappings":"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","names":["AnimationMetadataType"],"x_google_ignoreList":[0]}