@ciri/ngx-popup
Version:
An angular popup component that can customize animation.
71 lines • 4.42 kB
JavaScript
/**
* @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=