@fivethree/core
Version:
Fivethree Core Components
96 lines • 5.58 kB
JavaScript
/**
* @fileoverview added by tsickle
* Generated from: lib/popover/popover-element.directive.ts
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { FivPopover } from './popover.component';
import { Directive, ElementRef, Input } from '@angular/core';
export class FivPopoverElementDirective {
/**
* @param {?} el
*/
constructor(el) {
this.el = el;
this.ready = false;
this.delay = 150;
}
/**
* @param {?} visible
* @return {?}
*/
set show(visible) {
this._show = visible;
setTimeout((/**
* @return {?}
*/
() => {
if (this.show && this.ready) {
this.fivPopover.open(this.el);
}
else if (this.fivPopover.overlay && this.fivPopover.overlay.open) {
this.fivPopover.close();
}
}), 0);
}
/**
* @return {?}
*/
get show() {
return this._show;
}
/**
* @return {?}
*/
open() {
this.show = true;
}
/**
* @return {?}
*/
close() {
this.show = false;
}
/**
* @return {?}
*/
ngAfterViewInit() {
setTimeout((/**
* @return {?}
*/
() => {
this.ready = true;
this.show = this._show;
}), this.delay);
}
}
FivPopoverElementDirective.decorators = [
{ type: Directive, args: [{
selector: '[fivPopover]',
exportAs: 'fivPopover'
},] }
];
/** @nocollapse */
FivPopoverElementDirective.ctorParameters = () => [
{ type: ElementRef }
];
FivPopoverElementDirective.propDecorators = {
delay: [{ type: Input, args: ['fivPopover.delay',] }],
fivPopover: [{ type: Input }],
show: [{ type: Input, args: ['fivPopover.show',] }]
};
if (false) {
/** @type {?} */
FivPopoverElementDirective.prototype._show;
/** @type {?} */
FivPopoverElementDirective.prototype.ready;
/** @type {?} */
FivPopoverElementDirective.prototype.delay;
/** @type {?} */
FivPopoverElementDirective.prototype.fivPopover;
/**
* @type {?}
* @private
*/
FivPopoverElementDirective.prototype.el;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1lbGVtZW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BmaXZldGhyZWUvY29yZS8iLCJzb3VyY2VzIjpbImxpYi9wb3BvdmVyL3BvcG92ZXItZWxlbWVudC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDakQsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQU01RSxNQUFNLE9BQU8sMEJBQTBCOzs7O0lBb0JyQyxZQUFvQixFQUFjO1FBQWQsT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQWxCbEMsVUFBSyxHQUFHLEtBQUssQ0FBQztRQUNhLFVBQUssR0FBRyxHQUFHLENBQUM7SUFpQkYsQ0FBQzs7Ozs7SUFkdEMsSUFBOEIsSUFBSSxDQUFDLE9BQWdCO1FBQ2pELElBQUksQ0FBQyxLQUFLLEdBQUcsT0FBTyxDQUFDO1FBQ3JCLFVBQVU7OztRQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFO2dCQUMzQixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7YUFDL0I7aUJBQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUU7Z0JBQ2xFLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLENBQUM7YUFDekI7UUFDSCxDQUFDLEdBQUUsQ0FBQyxDQUFDLENBQUM7SUFDUixDQUFDOzs7O0lBQ0QsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7Ozs7SUFJRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQzs7OztJQUNELEtBQUs7UUFDSCxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztJQUNwQixDQUFDOzs7O0lBRUQsZUFBZTtRQUNiLFVBQVU7OztRQUFDLEdBQUcsRUFBRTtZQUNkLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUN6QixDQUFDLEdBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pCLENBQUM7OztZQXRDRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGNBQWM7Z0JBQ3hCLFFBQVEsRUFBRSxZQUFZO2FBQ3ZCOzs7O1lBTG1CLFVBQVU7OztvQkFTM0IsS0FBSyxTQUFDLGtCQUFrQjt5QkFDeEIsS0FBSzttQkFFTCxLQUFLLFNBQUMsaUJBQWlCOzs7O0lBTHhCLDJDQUFlOztJQUNmLDJDQUFjOztJQUNkLDJDQUF1Qzs7SUFDdkMsZ0RBQWdDOzs7OztJQWdCcEIsd0NBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRml2UG9wb3ZlciB9IGZyb20gJy4vcG9wb3Zlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBJbnB1dCwgQWZ0ZXJWaWV3SW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbZml2UG9wb3Zlcl0nLFxuICBleHBvcnRBczogJ2ZpdlBvcG92ZXInXG59KVxuZXhwb3J0IGNsYXNzIEZpdlBvcG92ZXJFbGVtZW50RGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIF9zaG93OiBib29sZWFuO1xuICByZWFkeSA9IGZhbHNlO1xuICBASW5wdXQoJ2ZpdlBvcG92ZXIuZGVsYXknKSBkZWxheSA9IDE1MDtcbiAgQElucHV0KCkgZml2UG9wb3ZlcjogRml2UG9wb3ZlcjtcblxuICBASW5wdXQoJ2ZpdlBvcG92ZXIuc2hvdycpIHNldCBzaG93KHZpc2libGU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9zaG93ID0gdmlzaWJsZTtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIGlmICh0aGlzLnNob3cgJiYgdGhpcy5yZWFkeSkge1xuICAgICAgICB0aGlzLmZpdlBvcG92ZXIub3Blbih0aGlzLmVsKTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5maXZQb3BvdmVyLm92ZXJsYXkgJiYgdGhpcy5maXZQb3BvdmVyLm92ZXJsYXkub3Blbikge1xuICAgICAgICB0aGlzLmZpdlBvcG92ZXIuY2xvc2UoKTtcbiAgICAgIH1cbiAgICB9LCAwKTtcbiAgfVxuICBnZXQgc2hvdygpIHtcbiAgICByZXR1cm4gdGhpcy5fc2hvdztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWw6IEVsZW1lbnRSZWYpIHt9XG5cbiAgb3BlbigpIHtcbiAgICB0aGlzLnNob3cgPSB0cnVlO1xuICB9XG4gIGNsb3NlKCkge1xuICAgIHRoaXMuc2hvdyA9IGZhbHNlO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5yZWFkeSA9IHRydWU7XG4gICAgICB0aGlzLnNob3cgPSB0aGlzLl9zaG93O1xuICAgIH0sIHRoaXMuZGVsYXkpO1xuICB9XG59XG4iXX0=