UNPKG

@ciri/ngx-popup

Version:

An angular popup component that can customize animation.

71 lines 4.42 kB
/** * @fileoverview added by tsickle * Generated from: lib/animation.service.ts * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { Injectable } from '@angular/core'; import { AnimationBuilder } from '@angular/animations'; import { Observable } from 'rxjs'; import * as i0 from "@angular/core"; import * as i1 from "@angular/animations"; export class AnimationService { /** * @param {?} builder */ constructor(builder) { this.builder = builder; } /** * @param {?} element * @param {?} animation * @return {?} */ makeAnimation(element, animation) { return new Observable((/** * @param {?} observer * @return {?} */ observer => { // first define a reusable animation /** @type {?} */ const myAnimation = this.builder.build(animation) // use the returned factory object to create a player ; // use the returned factory object to create a player /** @type {?} */ const player = myAnimation.create(element); player.play(); player.onDone((/** * @return {?} */ () => { observer.next(); observer.complete(); })); return (/** * @return {?} */ () => { player.destroy(); }); })); } } AnimationService.decorators = [ { type: Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ AnimationService.ctorParameters = () => [ { type: AnimationBuilder } ]; /** @nocollapse */ AnimationService.ngInjectableDef = i0.ɵɵdefineInjectable({ factory: function AnimationService_Factory() { return new AnimationService(i0.ɵɵinject(i1.AnimationBuilder)); }, token: AnimationService, providedIn: "root" }); if (false) { /** * @type {?} * @private */ AnimationService.prototype.builder; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5pbWF0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AY2lyaS9uZ3gtcG9wdXAvIiwic291cmNlcyI6WyJsaWIvYW5pbWF0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQzFDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ3RELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxNQUFNLENBQUE7OztBQUtqQyxNQUFNLE9BQU8sZ0JBQWdCOzs7O0lBQzNCLFlBQW9CLE9BQXlCO1FBQXpCLFlBQU8sR0FBUCxPQUFPLENBQWtCO0lBQUcsQ0FBQzs7Ozs7O0lBRWpELGFBQWEsQ0FBQyxPQUFZLEVBQUUsU0FBYztRQUN4QyxPQUFPLElBQUksVUFBVTs7OztRQUFNLFFBQVEsQ0FBQyxFQUFFOzs7a0JBRTlCLFdBQVcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUM7WUFFakQscURBQXFEOzs7O2tCQUMvQyxNQUFNLEdBQUcsV0FBVyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7WUFFMUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFBO1lBRWIsTUFBTSxDQUFDLE1BQU07OztZQUFDLEdBQUcsRUFBRTtnQkFDakIsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFBO2dCQUNmLFFBQVEsQ0FBQyxRQUFRLEVBQUUsQ0FBQTtZQUNyQixDQUFDLEVBQUMsQ0FBQTtZQUVGOzs7WUFBTyxHQUFHLEVBQUU7Z0JBQ1YsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFBO1lBQ2xCLENBQUMsRUFBQTtRQUNILENBQUMsRUFBQyxDQUFBO0lBQ0osQ0FBQzs7O1lBekJGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7OztZQUxRLGdCQUFnQjs7Ozs7Ozs7SUFPWCxtQ0FBaUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSdcbmltcG9ydCB7IEFuaW1hdGlvbkJ1aWxkZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJ1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnXG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEFuaW1hdGlvblNlcnZpY2Uge1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGJ1aWxkZXI6IEFuaW1hdGlvbkJ1aWxkZXIpIHt9XG5cbiAgbWFrZUFuaW1hdGlvbihlbGVtZW50OiBhbnksIGFuaW1hdGlvbjogYW55KSB7XG4gICAgcmV0dXJuIG5ldyBPYnNlcnZhYmxlPGFueT4ob2JzZXJ2ZXIgPT4ge1xuICAgICAgLy8gZmlyc3QgZGVmaW5lIGEgcmV1c2FibGUgYW5pbWF0aW9uXG4gICAgICBjb25zdCBteUFuaW1hdGlvbiA9IHRoaXMuYnVpbGRlci5idWlsZChhbmltYXRpb24pXG5cbiAgICAgIC8vIHVzZSB0aGUgcmV0dXJuZWQgZmFjdG9yeSBvYmplY3QgdG8gY3JlYXRlIGEgcGxheWVyXG4gICAgICBjb25zdCBwbGF5ZXIgPSBteUFuaW1hdGlvbi5jcmVhdGUoZWxlbWVudClcblxuICAgICAgcGxheWVyLnBsYXkoKVxuXG4gICAgICBwbGF5ZXIub25Eb25lKCgpID0+IHtcbiAgICAgICAgb2JzZXJ2ZXIubmV4dCgpXG4gICAgICAgIG9ic2VydmVyLmNvbXBsZXRlKClcbiAgICAgIH0pXG5cbiAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgIHBsYXllci5kZXN0cm95KClcbiAgICAgIH1cbiAgICB9KVxuICB9XG59XG4iXX0=