@kushki/ng-suka
Version:
<p align="center"> <h1 align="center">Suka Components Angular</h1> <p align="center"> An Angular implementation of the Suka Design System </p> </p>
93 lines • 7.07 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
// tslint:disable: variable-name
import { Subject } from 'rxjs';
import { filter, take } from 'rxjs/operators';
export class PopoverRef {
/**
* @param {?} overlayRef
*/
constructor(overlayRef) {
this.overlayRef = overlayRef;
this._beforeClose = new Subject();
this._afterClosed = new Subject();
}
/**
* @param {?=} data
* @return {?}
*/
close(data) {
this._result = data;
// Listen for animation 'start' events
this.componentInstance.animationStateChanged.pipe(filter((/**
* @param {?} event
* @return {?}
*/
event => event.phaseName === 'start')), take(1)).subscribe((/**
* @return {?}
*/
() => {
this._beforeClose.next(this._result);
this._beforeClose.complete();
this.overlayRef.detachBackdrop();
}));
// Listen for animation 'done' events
this.componentInstance.animationStateChanged.pipe(filter((/**
* @param {?} event
* @return {?}
*/
event => event.phaseName === 'done' && event.toState === 'leave')), take(1)).subscribe((/**
* @return {?}
*/
() => {
this._afterClosed.next(this._result);
this._afterClosed.complete();
this.overlayRef.dispose();
// Make sure to also clear the reference to the
// component instance to avoid memory leaks
// tslint:disable-next-line: no-non-null-assertion
this.componentInstance = (/** @type {?} */ (null));
}));
// Start exit animation
this.componentInstance.startExitAnimation();
}
/**
* @return {?}
*/
afterClosed() {
return this._afterClosed.asObservable();
}
/**
* @return {?}
*/
beforeClose() {
return this._beforeClose.asObservable();
}
}
if (false) {
/** @type {?} */
PopoverRef.prototype.componentInstance;
/**
* @type {?}
* @private
*/
PopoverRef.prototype._beforeClose;
/**
* @type {?}
* @private
*/
PopoverRef.prototype._afterClosed;
/**
* @type {?}
* @private
*/
PopoverRef.prototype._result;
/**
* @type {?}
* @private
*/
PopoverRef.prototype.overlayRef;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1yZWYuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Aa3VzaGtpL25nLXN1a2EvIiwic291cmNlcyI6WyJsaWIvcG9wb3Zlci9wb3BvdmVyLXJlZi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUlBLE9BQU8sRUFBRSxPQUFPLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDM0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU5QyxNQUFNLE9BQU8sVUFBVTs7OztJQVFyQixZQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO1FBTGxDLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQW1CLENBQUM7UUFDOUMsaUJBQVksR0FBRyxJQUFJLE9BQU8sRUFBbUIsQ0FBQztJQUlSLENBQUM7Ozs7O0lBRXhDLEtBQUssQ0FBQyxJQUFVO1FBQ3JCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBRXBCLHNDQUFzQztRQUN0QyxJQUFJLENBQUMsaUJBQWlCLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUMvQyxNQUFNOzs7O1FBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxLQUFLLE9BQU8sRUFBQyxFQUM1QyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQ1IsQ0FBQyxTQUFTOzs7UUFBQyxHQUFHLEVBQUU7WUFDZixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM3QixJQUFJLENBQUMsVUFBVSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ25DLENBQUMsRUFBQyxDQUFDO1FBRUgscUNBQXFDO1FBQ3JDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQy9DLE1BQU07Ozs7UUFBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxTQUFTLEtBQUssTUFBTSxJQUFJLEtBQUssQ0FBQyxPQUFPLEtBQUssT0FBTyxFQUFDLEVBQ3hFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FDUixDQUFDLFNBQVM7OztRQUFDLEdBQUcsRUFBRTtZQUNmLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNyQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQzdCLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLENBQUM7WUFFMUIsK0NBQStDO1lBQy9DLDJDQUEyQztZQUMzQyxrREFBa0Q7WUFDbEQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLG1CQUFBLElBQUksRUFBQyxDQUFDO1FBQ2pDLENBQUMsRUFBQyxDQUFDO1FBRUgsdUJBQXVCO1FBQ3ZCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzlDLENBQUM7Ozs7SUFFTSxXQUFXO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUMxQyxDQUFDOzs7O0lBRU0sV0FBVztRQUNoQixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUMsQ0FBQztDQUNGOzs7SUFoREMsdUNBQTJDOzs7OztJQUUzQyxrQ0FBc0Q7Ozs7O0lBQ3RELGtDQUFzRDs7Ozs7SUFFdEQsNkJBQWlDOzs7OztJQUVyQixnQ0FBOEIiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB0c2xpbnQ6ZGlzYWJsZTogdmFyaWFibGUtbmFtZVxuXG5pbXBvcnQgeyBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgUG9wb3ZlckNvbnRhaW5lciB9IGZyb20gJy4vcG9wb3Zlci1jb250YWluZXIuY29tcG9uZW50JztcbmltcG9ydCB7IFN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGZpbHRlciwgdGFrZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuZXhwb3J0IGNsYXNzIFBvcG92ZXJSZWYge1xuICBwdWJsaWMgY29tcG9uZW50SW5zdGFuY2U6IFBvcG92ZXJDb250YWluZXI7XG5cbiAgcHJpdmF0ZSBfYmVmb3JlQ2xvc2UgPSBuZXcgU3ViamVjdDxhbnkgfCB1bmRlZmluZWQ+KCk7XG4gIHByaXZhdGUgX2FmdGVyQ2xvc2VkID0gbmV3IFN1YmplY3Q8YW55IHwgdW5kZWZpbmVkPigpO1xuXG4gIHByaXZhdGUgX3Jlc3VsdDogYW55IHwgdW5kZWZpbmVkO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgb3ZlcmxheVJlZjogT3ZlcmxheVJlZikgeyB9XG5cbiAgcHVibGljIGNsb3NlKGRhdGE/OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLl9yZXN1bHQgPSBkYXRhO1xuXG4gICAgLy8gTGlzdGVuIGZvciBhbmltYXRpb24gJ3N0YXJ0JyBldmVudHNcbiAgICB0aGlzLmNvbXBvbmVudEluc3RhbmNlLmFuaW1hdGlvblN0YXRlQ2hhbmdlZC5waXBlKFxuICAgICAgZmlsdGVyKGV2ZW50ID0+IGV2ZW50LnBoYXNlTmFtZSA9PT0gJ3N0YXJ0JyksXG4gICAgICB0YWtlKDEpXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5fYmVmb3JlQ2xvc2UubmV4dCh0aGlzLl9yZXN1bHQpO1xuICAgICAgdGhpcy5fYmVmb3JlQ2xvc2UuY29tcGxldGUoKTtcbiAgICAgIHRoaXMub3ZlcmxheVJlZi5kZXRhY2hCYWNrZHJvcCgpO1xuICAgIH0pO1xuXG4gICAgLy8gTGlzdGVuIGZvciBhbmltYXRpb24gJ2RvbmUnIGV2ZW50c1xuICAgIHRoaXMuY29tcG9uZW50SW5zdGFuY2UuYW5pbWF0aW9uU3RhdGVDaGFuZ2VkLnBpcGUoXG4gICAgICBmaWx0ZXIoZXZlbnQgPT4gZXZlbnQucGhhc2VOYW1lID09PSAnZG9uZScgJiYgZXZlbnQudG9TdGF0ZSA9PT0gJ2xlYXZlJyksXG4gICAgICB0YWtlKDEpXG4gICAgKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5fYWZ0ZXJDbG9zZWQubmV4dCh0aGlzLl9yZXN1bHQpO1xuICAgICAgdGhpcy5fYWZ0ZXJDbG9zZWQuY29tcGxldGUoKTtcbiAgICAgIHRoaXMub3ZlcmxheVJlZi5kaXNwb3NlKCk7XG5cbiAgICAgIC8vIE1ha2Ugc3VyZSB0byBhbHNvIGNsZWFyIHRoZSByZWZlcmVuY2UgdG8gdGhlXG4gICAgICAvLyBjb21wb25lbnQgaW5zdGFuY2UgdG8gYXZvaWQgbWVtb3J5IGxlYWtzXG4gICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6IG5vLW5vbi1udWxsLWFzc2VydGlvblxuICAgICAgdGhpcy5jb21wb25lbnRJbnN0YW5jZSA9IG51bGwhO1xuICAgIH0pO1xuXG4gICAgLy8gU3RhcnQgZXhpdCBhbmltYXRpb25cbiAgICB0aGlzLmNvbXBvbmVudEluc3RhbmNlLnN0YXJ0RXhpdEFuaW1hdGlvbigpO1xuICB9XG5cbiAgcHVibGljIGFmdGVyQ2xvc2VkKCk6IE9ic2VydmFibGU8YW55IHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIHRoaXMuX2FmdGVyQ2xvc2VkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIGJlZm9yZUNsb3NlKCk6IE9ic2VydmFibGU8YW55IHwgdW5kZWZpbmVkPiB7XG4gICAgcmV0dXJuIHRoaXMuX2JlZm9yZUNsb3NlLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG59XG4iXX0=