UNPKG

com.phloxui

Version:

PhloxUI Ng2+ Framework

165 lines (164 loc) 14 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes} checked by tsc */ import * as tslib_1 from "tslib"; import { Directive, ElementRef, Input } from '@angular/core'; import { UUID } from 'angular2-uuid'; var /** @type {?} */ NAME = 'preload'; var /** @type {?} */ PREFIX_CLASSNAME = 'phx-preload'; var Preload = /** @class */ (function () { function Preload(elementRef) { this.elementRef = elementRef; this.preloadAutoSize = true; this.uuid = UUID.UUID(); this.showing = false; } /** * @return {?} */ Preload.prototype.ngOnInit = /** * @return {?} */ function () { if (this.conponent === undefined || this.conponent === null) { return; } var /** @type {?} */ loaded = true; if (typeof this.conponent['isLoaded'] === 'function') { loaded = this.conponent.isLoaded() && this.conponent.isLoadingEnabled(); } if (!loaded) { this.show(); } }; /** * @return {?} */ Preload.prototype.isShowing = /** * @return {?} */ function () { return this.showing; }; /** * @return {?} */ Preload.prototype.show = /** * @return {?} */ function () { if (this.showing) { // To prevent calling twice. return; } this.showing = true; var /** @type {?} */ ele = this.elementRef.nativeElement; var /** @type {?} */ preLoadDom = document.createElement("div"); var /** @type {?} */ className = ""; className += PREFIX_CLASSNAME; if (this.preloadClass !== undefined && this.preloadClass !== null) { if (typeof this.preloadClass === 'string') { className += " " + this.preloadClass; } else if (Array.isArray(this.preloadClass)) { try { for (var _a = tslib_1.__values(this.preloadClass), _b = _a.next(); !_b.done; _b = _a.next()) { var item = _b.value; className += " " + item; } } catch (e_1_1) { e_1 = { error: e_1_1 }; } finally { try { if (_b && !_b.done && (_c = _a.return)) _c.call(_a); } finally { if (e_1) throw e_1.error; } } } } preLoadDom.setAttribute("class", className); preLoadDom.setAttribute("id", this.uuid); var /** @type {?} */ styleText = ""; if (this.preloadAutoSize) { var /** @type {?} */ outlineSize = this.preloadOutline === undefined ? 0 : this.preloadOutline; styleText += "width:" + (ele.clientWidth + outlineSize * 2) + "px; height:" + (ele.clientHeight + outlineSize * 2) + "px;"; styleText += " left:" + (ele.offsetLeft - outlineSize) + "px; top:" + (ele.offsetTop - outlineSize) + "px;"; } else { styleText += " left:" + ele.offsetLeft + "px; top:" + ele.offsetTop + "px;"; } preLoadDom.setAttribute("style", styleText); // Add preload dom $(ele.parentElement).append(preLoadDom); // Hide original dom $(ele).css("opacity", 0); var e_1, _c; }; /** * @return {?} */ Preload.prototype.hide = /** * @return {?} */ function () { if (!this.showing) { // To prevent calling twice. return; } this.showing = false; // Remove preload dom $(this.elementRef.nativeElement.parentElement).find("#" + this.uuid).remove(); // Show original dom $(this.elementRef.nativeElement).css("opacity", 1); }; Preload.NAME = NAME; Preload.PREFIX_CLASSNAME = PREFIX_CLASSNAME; Preload.decorators = [ { type: Directive, args: [{ selector: '[phxPreload]' },] }, ]; /** @nocollapse */ Preload.ctorParameters = function () { return [ { type: ElementRef, }, ]; }; Preload.propDecorators = { "conponent": [{ type: Input, args: ['phxPreload',] },], "preloadClass": [{ type: Input, args: ['preloadClass',] },], "preloadAutoSize": [{ type: Input, args: ['preloadAutoSize',] },], "preloadOutline": [{ type: Input, args: ['preloadOutline',] },], }; return Preload; }()); export { Preload }; function Preload_tsickle_Closure_declarations() { /** @type {!Array<{type: !Function, args: (undefined|!Array<?>)}>} */ Preload.decorators; /** * @nocollapse * @type {function(): !Array<(null|{type: ?, decorators: (undefined|!Array<{type: !Function, args: (undefined|!Array<?>)}>)})>} */ Preload.ctorParameters; /** @type {!Object<string,!Array<{type: !Function, args: (undefined|!Array<?>)}>>} */ Preload.propDecorators; /** @type {?} */ Preload.NAME; /** @type {?} */ Preload.PREFIX_CLASSNAME; /** @type {?} */ Preload.prototype.conponent; /** @type {?} */ Preload.prototype.preloadClass; /** @type {?} */ Preload.prototype.preloadAutoSize; /** @type {?} */ Preload.prototype.preloadOutline; /** @type {?} */ Preload.prototype.elementRef; /** @type {?} */ Preload.prototype.uuid; /** @type {?} */ Preload.prototype.showing; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJlbG9hZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9jb20ucGhsb3h1aS8iLCJzb3VyY2VzIjpbImxpYi9kaXJlY3RpdmUvUHJlbG9hZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDckUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUlyQyxxQkFBTSxJQUFJLEdBQVcsU0FBUyxDQUFDO0FBQy9CLHFCQUFNLGdCQUFnQixHQUFXLGFBQWEsQ0FBQzs7SUFzQjdDLGlCQUFZLFVBQXNCO1FBQ2hDLElBQUksQ0FBQyxVQUFVLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBQzVCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0tBQ3RCOzs7O0lBRU0sMEJBQVE7Ozs7UUFDYixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLFNBQVMsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUM7WUFDNUQsTUFBTSxDQUFDO1NBQ1I7UUFFRCxxQkFBSSxNQUFNLEdBQVksSUFBSSxDQUFDO1FBQzNCLEVBQUUsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsS0FBSyxVQUFVLENBQUMsQ0FBQyxDQUFDO1lBQ3JELE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztTQUN6RTtRQUVELEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztZQUNaLElBQUksQ0FBQyxJ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LEtBQUssQ0FBQzs7UUFHckIsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDOztRQUc5RSxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDOzttQkFsR2YsSUFBSTsrQkFDUSxnQkFBZ0I7O2dCQU5uRSxTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7aUJBQ3pCOzs7O2dCQVZtQixVQUFVOzs7OEJBZ0IzQixLQUFLLFNBQUMsWUFBWTtpQ0FFbEIsS0FBSyxTQUFDLGNBQWM7b0NBRXBCLEtBQUssU0FBQyxpQkFBaUI7bUNBRXZCLEtBQUssU0FBQyxnQkFBZ0I7O2tCQXRCekI7O1NBV2EsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVVVJRCB9IGZyb20gJ2FuZ3VsYXIyLXV1aWQnO1xuXG5kZWNsYXJlIHZhciAkOiBhbnk7XG5cbmNvbnN0IE5BTUU6IHN0cmluZyA9ICdwcmVsb2FkJztcbmNvbnN0IFBSRUZJWF9DTEFTU05BTUU6IHN0cmluZyA9ICdwaHgtcHJlbG9hZCc7XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1twaHhQcmVsb2FkXSdcbn0pXG5leHBvcnQgY2xhc3MgUHJlbG9hZCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBOQU1FOiBzdHJpbmcgPSBOQU1FO1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFBSRUZJWF9DTEFTU05BTUU6IHN0cmluZyA9IFBSRUZJWF9DTEFTU05BTUU7XG5cbiAgQElucHV0KCdwaHhQcmVsb2FkJylcbiAgcHJpdmF0ZSBjb25wb25lbnQ6IGFueTtcbiAgQElucHV0KCdwcmVsb2FkQ2xhc3MnKVxuICBwcml2YXRlIHByZWxvYWRDbGFzczogYW55O1xuICBASW5wdXQoJ3ByZWxvYWRBdXRvU2l6ZScpXG4gIHByaXZhdGUgcHJlbG9hZEF1dG9TaXplOiBib29sZWFuO1xuICBASW5wdXQoJ3ByZWxvYWRPdXRsaW5lJylcbiAgcHJpdmF0ZSBwcmVsb2FkT3V0bGluZTogbnVtYmVyO1xuICBwcml2YXRlIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWY7XG4gIHByaXZhdGUgdXVpZDogc3RyaW5nO1xuICBwcml2YXRlIHNob3dpbmc6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoZWxlbWVudFJlZjogRWxlbWVudFJlZikge1xuICAgIHRoaXMuZWxlbWVudFJlZiA9IGVsZW1lbnRSZWY7XG4gICAgdGhpcy5wcmVsb2FkQXV0b1NpemUgPSB0cnVlO1xuICAgIHRoaXMudXVpZCA9IFVVSUQuVVVJRCgpO1xuICAgIHRoaXMuc2hvd2luZyA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNvbnBvbmVudCA9PT0gdW5kZWZpbmVkIHx8IHRoaXMuY29ucG9uZW50ID09PSBudWxsKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgbGV0IGxvYWRlZDogYm9vbGVhbiA9IHRydWU7XG4gICAgaWYgKHR5cGVvZiB0aGlzLmNvbnBvbmVudFsnaXNMb2FkZWQnXSA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgbG9hZGVkID0gdGhpcy5jb25wb25lbnQuaXNMb2FkZWQoKSAmJiB0aGlzLmNvbnBvbmVudC5pc0xvYWRpbmdFbmFibGVkKCk7XG4gICAgfVxuXG4gICAgaWYgKCFsb2FkZWQpIHtcbiAgICAgIHRoaXMuc2hvdygpO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBpc1Nob3dpbmcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2hvd2luZztcbiAgfVxuXG4gIHB1YmxpYyBzaG93KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnNob3dpbmcpIHtcbiAgICAgIC8vIFRvIHByZXZlbnQgY2FsbGluZyB0d2ljZS5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNob3dpbmcgPSB0cnVlO1xuXG4gICAgbGV0IGVsZSA9IHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50O1xuICAgIGxldCBwcmVMb2FkRG9tOiBIVE1MRWxlbWVudCA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoXCJkaXZcIik7XG4gICAgbGV0IGNsYXNzTmFtZTogc3RyaW5nID0gXCJcIjtcblxuICAgIGNsYXNzTmFtZSArPSBQUkVGSVhfQ0xBU1NOQU1FO1xuXG4gICAgaWYgKHRoaXMucHJlbG9hZENsYXNzICE9PSB1bmRlZmluZWQgJiYgdGhpcy5wcmVsb2FkQ2xhc3MgIT09IG51bGwpIHtcbiAgICAgIGlmICh0eXBlb2YgdGhpcy5wcmVsb2FkQ2xhc3MgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNsYXNzTmFtZSArPSBcIiBcIiArIHRoaXMucHJlbG9hZENsYXNzO1xuICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHRoaXMucHJlbG9hZENsYXNzKSkge1xuICAgICAgICBmb3IgKGxldCBpdGVtIG9mIHRoaXMucHJlbG9hZENsYXNzKSB7XG4gICAgICAgICAgY2xhc3NOYW1lICs9IFwiIFwiICsgaXRlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHByZUxvYWREb20uc2V0QXR0cmlidXRlKFwiY2xhc3NcIiwgY2xhc3NOYW1lKTtcbiAgICBwcmVMb2FkRG9tLnNldEF0dHJpYnV0ZShcImlkXCIsIHRoaXMudXVpZCk7XG5cbiAgICBsZXQgc3R5bGVUZXh0ID0gXCJcIjtcbiAgICBpZiAodGhpcy5wcmVsb2FkQXV0b1NpemUpIHtcbiAgICAgIGxldCBvdXRsaW5lU2l6ZTogbnVtYmVyID0gdGhpcy5wcmVsb2FkT3V0bGluZSA9PT0gdW5kZWZpbmVkID8gMCA6IHRoaXMucHJlbG9hZE91dGxpbmU7XG4gICAgICBzdHlsZVRleHQgKz0gXCJ3aWR0aDpcIiArIChlbGUuY2xpZW50V2lkdGggKyBvdXRsaW5lU2l6ZSAqIDIpICsgXCJweDsgaGVpZ2h0OlwiICsgKGVsZS5jbGllbnRIZWlnaHQgKyBvdXRsaW5lU2l6ZSAqIDIpICsgXCJweDtcIlxuICAgICAgc3R5bGVUZXh0ICs9IFwiIGxlZnQ6XCIgKyAoZWxlLm9mZnNldExlZnQgLSBvdXRsaW5lU2l6ZSkgKyBcInB4OyB0b3A6XCIgKyAoZWxlLm9mZnNldFRvcCAtIG91dGxpbmVTaXplKSArIFwicHg7XCI7XG4gICAgfSBlbHNlIHtcbiAgICAgIHN0eWxlVGV4dCArPSBcIiBsZWZ0OlwiICsgZWxlLm9mZnNldExlZnQgKyBcInB4OyB0b3A6XCIgKyBlbGUub2Zmc2V0VG9wICsgXCJweDtcIjtcbiAgICB9XG5cbiAgICBwcmVMb2FkRG9tLnNldEF0dHJpYnV0ZShcInN0eWxlXCIsIHN0eWxlVGV4dCk7XG5cbiAgICAvLyBBZGQgcHJlbG9hZCBkb21cbiAgICAkKGVsZS5wYXJlbnRFbGVtZW50KS5hcHBlbmQocHJlTG9hZERvbSk7XG5cbiAgICAvLyBIaWRlIG9yaWdpbmFsIGRvbVxuICAgICQoZWxlKS5jc3MoXCJvcGFjaXR5XCIsIDApO1xuICB9XG5cbiAgcHVibGljIGhpZGUoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnNob3dpbmcpIHtcbiAgICAgIC8vIFRvIHByZXZlbnQgY2FsbGluZyB0d2ljZS5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLnNob3dpbmcgPSBmYWxzZTtcblxuICAgIC8vIFJlbW92ZSBwcmVsb2FkIGRvbVxuICAgICQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQucGFyZW50RWxlbWVudCkuZmluZChcIiNcIiArIHRoaXMudXVpZCkucmVtb3ZlKCk7XG5cbiAgICAvLyBTaG93IG9yaWdpbmFsIGRvbVxuICAgICQodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpLmNzcyhcIm9wYWNpdHlcIiwgMSk7XG4gIH1cbn1cbiJdfQ==