{"version":3,"file":"ngx-easy-view-transitions.mjs","sources":["../../../ngx-easy-view-transitions/src/lib/default-transitions.ts","../../../ngx-easy-view-transitions/src/lib/no-transition.directive.ts","../../../ngx-easy-view-transitions/src/lib/utils.ts","../../../ngx-easy-view-transitions/src/lib/keyframes.service.ts","../../../ngx-easy-view-transitions/src/lib/view-transitions.service.ts","../../../ngx-easy-view-transitions/src/lib/transition-name.directive.ts","../../../ngx-easy-view-transitions/src/lib/default-view-transition.provider.ts","../../../ngx-easy-view-transitions/src/ngx-easy-view-transitions.ts"],"sourcesContent":["export const none: Keyframe[] = [];\n\nexport const scaleIn: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'scale(0.5)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'scale(1)',\n    offset: 1,\n  },\n];\n\nexport const scaleOut: Keyframe[] = [\n  {\n    opacity: 1,\n    transform: 'scale(1)',\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'scale(0.5)',\n    offset: 1,\n  },\n];\n\nexport const fadeIn: Keyframe[] = [\n  {\n    opacity: 0,\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    offset: 1,\n  },\n];\n\nexport const fadeOut: Keyframe[] = [\n  {\n    opacity: 1,\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    offset: 1,\n  },\n];\n\nexport const fadeInUp: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'translate(0, 100%)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'translate(0, 0)',\n    offset: 1,\n  },\n];\n\nexport const fadeOutUp: Keyframe[] = [\n  {\n    opacity: 1,\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'translate(0, -100%)',\n    offset: 1,\n  },\n];\n\nexport const fadeInDown: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'translate(0, -100%)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'translate(0, 0)',\n    offset: 1,\n  },\n];\n\nexport const fadeOutDown: Keyframe[] = [\n  {\n    opacity: 1,\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'translate(0, 100%)',\n    offset: 1,\n  },\n];\n\nexport const fadeInRight: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'translate(100%, 0)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'translate(0, 0)',\n    offset: 1,\n  },\n];\n\nexport const fadeOutRight: Keyframe[] = [\n  {\n    opacity: 1,\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'translate(100%, 0)',\n    offset: 1,\n  },\n];\n\nexport const fadeInLeft: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'translate(-100%, 0)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'translate(0, 0)',\n    offset: 1,\n  },\n];\n\nexport const fadeOutLeft: Keyframe[] = [\n  {\n    opacity: 1,\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'translate(-100%, 0)',\n    offset: 1,\n  },\n];\n\nexport const flipInX: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'rotateX(90deg)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'rotateX(0)',\n    offset: 1,\n  },\n];\n\nexport const flipOutX: Keyframe[] = [\n  {\n    opacity: 1,\n    transform: 'rotateX(0)',\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'rotateX(90deg)',\n    offset: 1,\n  },\n];\n\nexport const flipInY: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'rotateY(90deg)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'rotateY(0)',\n    offset: 1,\n  },\n];\n\nexport const flipOutY: Keyframe[] = [\n  {\n    opacity: 1,\n    transform: 'rotateY(0)',\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'rotateY(90deg)',\n    offset: 1,\n  },\n];\n\nexport const rotateIn: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'rotate(-180deg) scale(0.5)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'rotate(0) scale(1)',\n    offset: 1,\n  },\n];\n\nexport const rotateOut: Keyframe[] = [\n  {\n    opacity: 1,\n    transform: 'rotate(0) scale(1)',\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'rotate(180deg) scale(0.5)',\n    offset: 1,\n  },\n];\n\nexport const bounceIn: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'scale(0.3)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'scale(1.05)',\n    offset: 0.6,\n  },\n  {\n    opacity: 1,\n    transform: 'scale(0.95)',\n    offset: 0.8,\n  },\n  {\n    opacity: 1,\n    transform: 'scale(1)',\n    offset: 1,\n  },\n];\n\nexport const bounceOut: Keyframe[] = [\n  {\n    opacity: 1,\n    transform: 'scale(1)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'scale(0.95)',\n    offset: 0.2,\n  },\n  {\n    opacity: 1,\n    transform: 'scale(1.05)',\n    offset: 0.4,\n  },\n  {\n    opacity: 0,\n    transform: 'scale(0.3)',\n    offset: 1,\n  },\n];\n\nexport const blurIn: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'scale(1.2)',\n    filter: 'blur(20px)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'scale(1)',\n    filter: 'blur(0px)',\n    offset: 1,\n  },\n];\n\nexport const blurOut: Keyframe[] = [\n  {\n    opacity: 1,\n    transform: 'scale(1)',\n    filter: 'blur(0px)',\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'scale(0.8)',\n    filter: 'blur(20px)',\n    offset: 1,\n  },\n];\n\nexport const perspectiveIn: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'perspective(1000px) rotateY(90deg)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'perspective(1000px) rotateY(0deg)',\n    offset: 1,\n  },\n];\n\nexport const perspectiveOut: Keyframe[] = [\n  {\n    opacity: 1,\n    transform: 'perspective(1000px) rotateY(0deg)',\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'perspective(1000px) rotateY(-90deg)',\n    offset: 1,\n  },\n];\n\nexport const skewIn: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'translateX(-100%) skewX(30deg)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'translateX(0) skewX(0deg)',\n    offset: 1,\n  },\n];\n\nexport const skewOut: Keyframe[] = [\n  {\n    opacity: 1,\n    transform: 'translateX(0) skewX(0deg)',\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'translateX(100%) skewX(-30deg)',\n    offset: 1,\n  },\n];\n\nexport const revealCircleIn: Keyframe[] = [\n  {\n    clipPath: 'circle(0% at 50% 50%)',\n    offset: 0,\n  },\n  {\n    clipPath: 'circle(150% at 50% 50%)',\n    offset: 1,\n  },\n];\n\nexport const revealCircleOut: Keyframe[] = [\n  {\n    clipPath: 'circle(150% at 50% 50%)',\n    offset: 0,\n  },\n  {\n    clipPath: 'circle(0% at 50% 50%)',\n    offset: 1,\n  },\n];\n\nexport const parallaxIn: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'translateZ(-300px) scale(2)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'translateZ(0) scale(1)',\n    offset: 1,\n  },\n];\n\nexport const parallaxOut: Keyframe[] = [\n  {\n    opacity: 1,\n    transform: 'translateZ(0) scale(1)',\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'translateZ(-300px) scale(0.8)',\n    offset: 1,\n  },\n];\n\nexport const tiltIn: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'rotate(-15deg) translateY(50%)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'rotate(0) translateY(0)',\n    offset: 1,\n  },\n];\n\nexport const tiltOut: Keyframe[] = [\n  {\n    opacity: 1,\n    transform: 'rotate(0) translateY(0)',\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'rotate(15deg) translateY(-50%)',\n    offset: 1,\n  },\n];\n\nexport const glitchIn: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'translate(0, 0)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'translate(-2px, 2px)',\n    offset: 0.2,\n  },\n  {\n    opacity: 1,\n    transform: 'translate(2px, -2px)',\n    offset: 0.4,\n  },\n  {\n    opacity: 1,\n    transform: 'translate(-1px, 1px)',\n    offset: 0.6,\n  },\n  {\n    opacity: 1,\n    transform: 'translate(1px, -1px)',\n    offset: 0.8,\n  },\n  {\n    opacity: 1,\n    transform: 'translate(0, 0)',\n    offset: 1,\n  },\n];\n\nexport const curtainIn: Keyframe[] = [\n  {\n    clipPath: 'inset(0 50% 0 50%)',\n    offset: 0,\n  },\n  {\n    clipPath: 'inset(0 0% 0 0%)',\n    offset: 1,\n  },\n];\n\nexport const curtainOut: Keyframe[] = [\n  {\n    clipPath: 'inset(0 0% 0 0%)',\n    offset: 0,\n  },\n  {\n    clipPath: 'inset(0 50% 0 50%)',\n    offset: 1,\n  },\n];\n\nexport const depthFlipIn: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'perspective(1200px) rotateX(-90deg) translateZ(-200px)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'perspective(1200px) rotateX(0deg) translateZ(0)',\n    offset: 1,\n  },\n];\n\nexport const depthFlipOut: Keyframe[] = [\n  {\n    opacity: 1,\n    transform: 'perspective(1200px) rotateX(0deg) translateZ(0)',\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'perspective(1200px) rotateX(90deg) translateZ(-200px)',\n    offset: 1,\n  },\n];\n\nexport const distortWarpIn: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'skewX(20deg) scale(0.9)',\n    filter: 'blur(10px)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'skewX(0deg) scale(1)',\n    filter: 'blur(0px)',\n    offset: 1,\n  },\n];\n\nexport const distortWarpOut: Keyframe[] = [\n  {\n    opacity: 1,\n    transform: 'skewX(0deg) scale(1)',\n    filter: 'blur(0px)',\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'skewX(-20deg) scale(0.9)',\n    filter: 'blur(10px)',\n    offset: 1,\n  },\n];\n\nexport const coverFlipIn: Keyframe[] = [\n  {\n    opacity: 0,\n    transform: 'perspective(800px) rotateY(-12deg) translateX(-8px)',\n    offset: 0,\n  },\n  {\n    opacity: 1,\n    transform: 'perspective(800px) rotateY(0deg) translateX(0)',\n    offset: 1,\n  },\n];\n\nexport const coverFlipOut: Keyframe[] = [\n  {\n    opacity: 1,\n    transform: 'perspective(800px) rotateY(0deg) translateX(0)',\n    offset: 0,\n  },\n  {\n    opacity: 0,\n    transform: 'perspective(800px) rotateY(12deg) translateX(8px)',\n    offset: 1,\n  },\n];\n","import { Directive, ElementRef, inject, OnInit, RendererFactory2 } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\n\n/**\n * Exclude an element from view transitions\n */\n@Directive({\n  standalone: true,\n  selector: '[noTransition]',\n})\nexport class NoTransitionDirective implements OnInit {\n  private readonly _el = inject(ElementRef);\n  private readonly _rendererFactory = inject(RendererFactory2);\n  private readonly _renderer = this._rendererFactory.createRenderer(null, null);\n  private readonly _document = inject(DOCUMENT);\n\n  ngOnInit(): void {\n    const transitionName = 'ngx-easy-view-transitions-disabled';\n\n    this._el.nativeElement.style.viewTransitionName = transitionName;\n\n    const elementId = 'view-transition-none';\n\n    const styleElement = this._document.getElementById(elementId) || this._document.createElement('style');\n\n    styleElement.innerHTML = `\n    ::view-transition-group(${transitionName}),\n    ::view-transition-old(${transitionName}),\n    ::view-transition-new(${transitionName}) {\n      animation-duration: 0s !important;\n    }\n    `;\n    styleElement.id = elementId;\n\n    if (!this._document.getElementById(elementId)) this._renderer.appendChild(this._document.head, styleElement);\n  }\n}\n","/**@internal*/\nexport function hashCode(str: string): number {\n  let hash = 0;\n  for (let i = 0, len = str.length; i < len; i++) {\n    const code = str.charCodeAt(i);\n    hash = (hash << 5) - hash + code;\n    hash |= 0; // Convert to 32bit integer\n  }\n  return hash;\n}\n\n/**@internal*/\nexport function isValidCustomIdentValue(value: string): boolean {\n  const regex =\n    /^(?:[A-Za-z_]|-(?!\\d)|\\\\[0-9A-Fa-f]{1,6}|\\\\.)[A-Za-z0-9_-]*(?:\\\\[0-9A-Fa-f]{1,6}|\\\\.)*[A-Za-z0-9_-]*$/u;\n\n  return regex.test(value);\n}\n\n/**@internal*/\nexport function isValidViewTransitionName(value: string): boolean {\n  return (\n    isValidCustomIdentValue(value) &&\n    value !== 'unset' &&\n    value !== 'initial' &&\n    value !== 'inherit' &&\n    value !== 'none'\n  );\n}\n","import { inject, Injectable, RendererFactory2 } from '@angular/core';\nimport { hashCode } from './utils';\nimport { DOCUMENT } from '@angular/common';\n\n/**@internal*/\n@Injectable({ providedIn: 'root' })\nexport class KeyframesService {\n  private readonly _rendererFactory = inject(RendererFactory2);\n  private readonly _renderer = this._rendererFactory.createRenderer(null, null);\n  private readonly _document = inject(DOCUMENT);\n\n  private readonly _insertedKeyframes = new Set<string>();\n\n  setKeyframes(keyframes: Keyframe[]) {\n    const keyframesAsString = JSON.stringify(keyframes);\n    const hashedKeyframes = hashCode(keyframesAsString);\n    const keyframesName = `keyframes-${hashedKeyframes}`;\n\n    if (this._insertedKeyframes.has(keyframesName)) return keyframesName;\n\n    const styleElement = this._renderer.createElement('style') as HTMLStyleElement;\n\n    this._renderer.setAttribute(styleElement, 'id', keyframesName);\n\n    const cssKeyframeRule = this.generateCssKeyframeRule(keyframesName, keyframes);\n    this._renderer.setProperty(styleElement, 'innerHTML', cssKeyframeRule);\n\n    this._renderer.appendChild(this._document.head, styleElement);\n\n    this._insertedKeyframes.add(keyframesName);\n\n    return keyframesName;\n  }\n\n  private generateCssKeyframeRule(animationName: string, keyframes: Keyframe[]): string {\n    const cssKeyframes: string[] = [];\n\n    keyframes.forEach((keyframe, index) => {\n      const offset = keyframe.offset ? `${keyframe.offset * 100}%` : '';\n\n      const keyframeDeclaration = `${\n        index === 0 ? 'from' : offset ? offset : index === keyframes.length - 1 ? 'to' : ''\n      }`;\n\n      const cssProperties = Object.entries(keyframe)\n        .filter(([property]) => property !== 'offset')\n        .map(([property, value]) => `${property}: ${value};`)\n        .join('');\n\n      cssKeyframes.push(`${keyframeDeclaration} { ${cssProperties} }`);\n    });\n\n    return `@keyframes ${animationName} { ${cssKeyframes.join(' ')} }`;\n  }\n}\n","import { inject, Injectable, RendererFactory2 } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\n\n/**@internal*/\n@Injectable({ providedIn: 'root' })\nexport class ViewTransitionsService {\n  private readonly _rendererFactory = inject(RendererFactory2);\n  private readonly _renderer = this._rendererFactory.createRenderer(null, null);\n  private readonly _document = inject(DOCUMENT);\n\n  setOutAnimation(outAnimation: string, transitionName: string) {\n    const elementId = `view-transition-out-${transitionName}`;\n\n    const styleElement = this._document.getElementById(elementId) || this._document.createElement('style');\n\n    styleElement.innerHTML = `\n    ::view-transition-old(${transitionName}){\n      animation: ${outAnimation};\n    }\n    `;\n    styleElement.id = elementId;\n\n    if (!this._document.getElementById(elementId)) this._renderer.appendChild(this._document.head, styleElement);\n  }\n\n  setInAnimation(inAnimation: string, transitionName: string) {\n    const elementId = `view-transition-in-${transitionName}`;\n\n    const styleElement = this._document.getElementById(elementId) || this._document.createElement('style');\n\n    styleElement.innerHTML = `\n    ::view-transition-new(${transitionName}){\n      animation: ${inAnimation};\n    }\n    `;\n    styleElement.id = elementId;\n\n    if (!this._document.getElementById(elementId)) this._renderer.appendChild(this._document.head, styleElement);\n  }\n}\n","import { Directive, effect, ElementRef, inject, input, Renderer2 } from '@angular/core';\nimport { KeyframesTransition } from './keyframes-transition';\nimport { CssKeyframesTransition } from './css-keyframes-transition';\nimport { KeyframesService } from './keyframes.service';\nimport { ViewTransitionsService } from './view-transitions.service';\nimport { isValidViewTransitionName } from './utils';\n\n/**\n * Configure view transitions for the element\n */\n@Directive({\n  standalone: true,\n  selector: '[transitionName]',\n})\nexport class TransitionNameDirective {\n  /**\n   * Set the `view-transition-name` property to assign transitions to that element\n   */\n  transitionName = input.required<string>();\n  /**\n   * Configure the animation when the element enters the view\n   */\n  inAnimation = input<KeyframesTransition | CssKeyframesTransition>();\n  /**\n   * Configure the animation when the element leaves the view\n   */\n  outAnimation = input<KeyframesTransition | CssKeyframesTransition>();\n\n  private readonly _el = inject(ElementRef);\n  private readonly _renderer = inject(Renderer2);\n  private readonly _keyframesService = inject(KeyframesService);\n  private readonly _viewTransitionsService = inject(ViewTransitionsService);\n\n  constructor() {\n    //transitionName\n    effect(() => {\n      const transitionName = this.transitionName();\n\n      this._renderer.setStyle(this._el.nativeElement, 'view-transition-name', transitionName);\n\n      queueMicrotask(() => {\n        if (!isValidViewTransitionName(transitionName))\n          console.warn(\n            `The transition name \"${transitionName}\" is potentially invalid. Please use a valid CSS <custom-ident> value and avoid forbidden values like \"unset\", \"initial\", \"inherit\" and \"none\".`\n          );\n      });\n    });\n\n    //inAnimation\n    effect(async () => {\n      const inAnimation = this.inAnimation();\n\n      if (!inAnimation) return;\n\n      if ('keyframesName' in inAnimation) {\n        const animation = inAnimation as CssKeyframesTransition;\n        this._viewTransitionsService.setInAnimation(\n          `${animation.duration}ms ${animation.keyframesName} ${animation.reverse ? 'reverse' : ''}`,\n          this.transitionName()\n        );\n      }\n\n      if ('keyframes' in inAnimation) {\n        const animation = inAnimation as KeyframesTransition;\n        const keyframesName = this._keyframesService.setKeyframes(animation.keyframes);\n        this._viewTransitionsService.setInAnimation(\n          `${animation.duration}ms ${keyframesName} ${animation.reverse ? 'reverse' : ''}`,\n          this.transitionName()\n        );\n      }\n    });\n\n    //outAnimation\n    effect(async () => {\n      const outAnimation = this.outAnimation();\n\n      if (!outAnimation) return;\n\n      if ('keyframesName' in outAnimation) {\n        const animation = outAnimation as CssKeyframesTransition;\n        this._viewTransitionsService.setOutAnimation(\n          `${animation.duration}ms ${animation.keyframesName} ${animation.reverse ? 'reverse' : ''}`,\n          this.transitionName()\n        );\n      }\n\n      if ('keyframes' in outAnimation) {\n        const animation = outAnimation as KeyframesTransition;\n        const keyframesName = this._keyframesService.setKeyframes(animation.keyframes);\n        this._viewTransitionsService.setOutAnimation(\n          `${animation.duration}ms ${keyframesName} ${animation.reverse ? 'reverse' : ''}`,\n          this.transitionName()\n        );\n      }\n    });\n  }\n}\n","import { EnvironmentProviders, inject, provideAppInitializer } from '@angular/core';\nimport { KeyframesTransition } from './keyframes-transition';\nimport { CssKeyframesTransition } from './css-keyframes-transition';\nimport { ViewTransitionsService } from './view-transitions.service';\nimport { KeyframesService } from './keyframes.service';\n\n/**\n * Override the default View Transition API cross-fade animation\n * @param inAnimation\n * @param outAnimation\n */\nexport function provideDefaultViewTransition(\n  inAnimation: KeyframesTransition | CssKeyframesTransition,\n  outAnimation: KeyframesTransition | CssKeyframesTransition\n): EnvironmentProviders {\n  const factory = (viewTransitionService: ViewTransitionsService, keyframesService: KeyframesService) => {\n    return () => {\n      if ('keyframesName' in inAnimation) {\n        const animation = inAnimation as CssKeyframesTransition;\n        viewTransitionService.setInAnimation(\n          `${animation.duration}ms ${animation.keyframesName} ${animation.reverse ? 'reverse' : ''}`,\n          'root'\n        );\n      }\n\n      if ('keyframes' in inAnimation) {\n        const animation = inAnimation as KeyframesTransition;\n        const keyframesName = keyframesService.setKeyframes(animation.keyframes);\n        viewTransitionService.setInAnimation(\n          `${animation.duration}ms ${keyframesName} ${animation.reverse ? 'reverse' : ''}`,\n          'root'\n        );\n      }\n\n      if ('keyframesName' in outAnimation) {\n        const animation = outAnimation as CssKeyframesTransition;\n        viewTransitionService.setOutAnimation(\n          `${animation.duration}ms ${animation.keyframesName} ${animation.reverse ? 'reverse' : ''}`,\n          'root'\n        );\n      }\n\n      if ('keyframes' in outAnimation) {\n        const animation = outAnimation as KeyframesTransition;\n        const keyframesName = keyframesService.setKeyframes(animation.keyframes);\n        viewTransitionService.setOutAnimation(\n          `${animation.duration}ms ${keyframesName} ${animation.reverse ? 'reverse' : ''}`,\n          'root'\n        );\n      }\n    };\n  };\n\n  return provideAppInitializer(() => {\n    const initializerFn = factory(inject(ViewTransitionsService), inject(KeyframesService));\n    return initializerFn();\n  });\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}