ng-lazyload-image-angular-universal
Version:
This is an extension from ng-lazyload-image, made available for Angular Universal.
105 lines • 7.25 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var Rect = /** @class */ (function () {
function Rect(left, top, right, bottom) {
this.left = left;
this.top = top;
this.right = right;
this.bottom = bottom;
}
/**
* @param {?} element
* @return {?}
*/
Rect.fromElement = /**
* @param {?} element
* @return {?}
*/
function (element) {
var _a = element.getBoundingClientRect(), left = _a.left, top = _a.top, right = _a.right, bottom = _a.bottom;
if (left === 0 && top === 0 && right === 0 && bottom === 0) {
return Rect.empty;
}
else {
return new Rect(left, top, right, bottom);
}
};
/**
* @param {?} _window
* @return {?}
*/
Rect.fromWindow = /**
* @param {?} _window
* @return {?}
*/
function (_window) {
return new Rect(0, 0, _window.innerWidth, _window.innerHeight);
};
/**
* @param {?} inflateBy
* @return {?}
*/
Rect.prototype.inflate = /**
* @param {?} inflateBy
* @return {?}
*/
function (inflateBy) {
this.left -= inflateBy;
this.top -= inflateBy;
this.right += inflateBy;
this.bottom += inflateBy;
};
/**
* @param {?} rect
* @return {?}
*/
Rect.prototype.intersectsWith = /**
* @param {?} rect
* @return {?}
*/
function (rect) {
return rect.left < this.right && this.left < rect.right && rect.top < this.bottom && this.top < rect.bottom;
};
/**
* @param {?} rect
* @return {?}
*/
Rect.prototype.getIntersectionWith = /**
* @param {?} rect
* @return {?}
*/
function (rect) {
/** @type {?} */
var left = Math.max(this.left, rect.left);
/** @type {?} */
var top = Math.max(this.top, rect.top);
/** @type {?} */
var right = Math.min(this.right, rect.right);
/** @type {?} */
var bottom = Math.min(this.bottom, rect.bottom);
if (right >= left && bottom >= top) {
return new Rect(left, top, right, bottom);
}
else {
return Rect.empty;
}
};
Rect.empty = new Rect(0, 0, 0, 0);
return Rect;
}());
export { Rect };
if (false) {
/** @type {?} */
Rect.empty;
/** @type {?} */
Rect.prototype.left;
/** @type {?} */
Rect.prototype.top;
/** @type {?} */
Rect.prototype.right;
/** @type {?} */
Rect.prototype.bottom;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjdC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL25nLWxhenlsb2FkLWltYWdlLWFuZ3VsYXItdW5pdmVyc2FsLyIsInNvdXJjZXMiOlsibGliL3Njcm9sbC1wcmVzZXQvcmVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUE7SUFRRSxjQUFZLElBQVksRUFBRSxHQUFXLEVBQUUsS0FBYSxFQUFFLE1BQWM7UUFDbEUsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7UUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztJQUN2QixDQUFDOzs7OztJQUVNLGdCQUFXOzs7O0lBQWxCLFVBQW1CLE9BQW9CO1FBQy9CLElBQUEsb0NBQThELEVBQTVELGNBQUksRUFBRSxZQUFHLEVBQUUsZ0JBQUssRUFBRSxrQkFBMEM7UUFFcEUsSUFBSSxJQUFJLEtBQUssQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLElBQUksS0FBSyxLQUFLLENBQUMsSUFBSSxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzFELE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztTQUNuQjthQUFNO1lBQ0wsT0FBTyxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztTQUMzQztJQUNILENBQUM7Ozs7O0lBRU0sZUFBVTs7OztJQUFqQixVQUFrQixPQUFlO1FBQy9CLE9BQU8sSUFBSSxJQUFJLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxPQUFPLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNqRSxDQUFDOzs7OztJQUVELHNCQUFPOzs7O0lBQVAsVUFBUSxTQUFpQjtRQUN2QixJQUFJLENBQUMsSUFBSSxJQUFJLFNBQVMsQ0FBQztRQUN2QixJQUFJLENBQUMsR0FBRyxJQUFJLFNBQVMsQ0FBQztRQUN0QixJQUFJLENBQUMsS0FBSyxJQUFJLFNBQVMsQ0FBQztRQUN4QixJQUFJLENBQUMsTUFBTSxJQUFJLFNBQVMsQ0FBQztJQUMzQixDQUFDOzs7OztJQUVELDZCQUFjOzs7O0lBQWQsVUFBZSxJQUFVO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQzlHLENBQUM7Ozs7O0lBRUQsa0NBQW1COzs7O0lBQW5CLFVBQW9CLElBQVU7O1lBQ3RCLElBQUksR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQzs7WUFDckMsR0FBRyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDOztZQUNsQyxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUM7O1lBQ3hDLE1BQU0sR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQztRQUVqRCxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksTUFBTSxJQUFJLEdBQUcsRUFBRTtZQUNsQyxPQUFPLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxHQUFHLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1NBQzNDO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7U0FDbkI7SUFDSCxDQUFDO0lBbERNLFVBQUssR0FBUyxJQUFJLElBQUksQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztJQW1ENUMsV0FBQztDQUFBLEFBcERELElBb0RDO1NBcERZLElBQUk7OztJQUNmLFdBQTBDOztJQUUxQyxvQkFBYTs7SUFDYixtQkFBWTs7SUFDWixxQkFBYzs7SUFDZCxzQkFBZSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBSZWN0IHtcbiAgc3RhdGljIGVtcHR5OiBSZWN0ID0gbmV3IFJlY3QoMCwgMCwgMCwgMCk7XG5cbiAgbGVmdDogbnVtYmVyO1xuICB0b3A6IG51bWJlcjtcbiAgcmlnaHQ6IG51bWJlcjtcbiAgYm90dG9tOiBudW1iZXI7XG5cbiAgY29uc3RydWN0b3IobGVmdDogbnVtYmVyLCB0b3A6IG51bWJlciwgcmlnaHQ6IG51bWJlciwgYm90dG9tOiBudW1iZXIpIHtcbiAgICB0aGlzLmxlZnQgPSBsZWZ0O1xuICAgIHRoaXMudG9wID0gdG9wO1xuICAgIHRoaXMucmlnaHQgPSByaWdodDtcbiAgICB0aGlzLmJvdHRvbSA9IGJvdHRvbTtcbiAgfVxuXG4gIHN0YXRpYyBmcm9tRWxlbWVudChlbGVtZW50OiBIVE1MRWxlbWVudCk6IFJlY3Qge1xuICAgIGNvbnN0IHsgbGVmdCwgdG9wLCByaWdodCwgYm90dG9tIH0gPSBlbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXG4gICAgaWYgKGxlZnQgPT09IDAgJiYgdG9wID09PSAwICYmIHJpZ2h0ID09PSAwICYmIGJvdHRvbSA9PT0gMCkge1xuICAgICAgcmV0dXJuIFJlY3QuZW1wdHk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBuZXcgUmVjdChsZWZ0LCB0b3AsIHJpZ2h0LCBib3R0b20pO1xuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBmcm9tV2luZG93KF93aW5kb3c6IFdpbmRvdyk6IFJlY3Qge1xuICAgIHJldHVybiBuZXcgUmVjdCgwLCAwLCBfd2luZG93LmlubmVyV2lkdGgsIF93aW5kb3cuaW5uZXJIZWlnaHQpO1xuICB9XG5cbiAgaW5mbGF0ZShpbmZsYXRlQnk6IG51bWJlcikge1xuICAgIHRoaXMubGVmdCAtPSBpbmZsYXRlQnk7XG4gICAgdGhpcy50b3AgLT0gaW5mbGF0ZUJ5O1xuICAgIHRoaXMucmlnaHQgKz0gaW5mbGF0ZUJ5O1xuICAgIHRoaXMuYm90dG9tICs9IGluZmxhdGVCeTtcbiAgfVxuXG4gIGludGVyc2VjdHNXaXRoKHJlY3Q6IFJlY3QpOiBib29sZWFuIHtcbiAgICByZXR1cm4gcmVjdC5sZWZ0IDwgdGhpcy5yaWdodCAmJiB0aGlzLmxlZnQgPCByZWN0LnJpZ2h0ICYmIHJlY3QudG9wIDwgdGhpcy5ib3R0b20gJiYgdGhpcy50b3AgPCByZWN0LmJvdHRvbTtcbiAgfVxuXG4gIGdldEludGVyc2VjdGlvbldpdGgocmVjdDogUmVjdCk6IFJlY3Qge1xuICAgIGNvbnN0IGxlZnQgPSBNYXRoLm1heCh0aGlzLmxlZnQsIHJlY3QubGVmdCk7XG4gICAgY29uc3QgdG9wID0gTWF0aC5tYXgodGhpcy50b3AsIHJlY3QudG9wKTtcbiAgICBjb25zdCByaWdodCA9IE1hdGgubWluKHRoaXMucmlnaHQsIHJlY3QucmlnaHQpO1xuICAgIGNvbnN0IGJvdHRvbSA9IE1hdGgubWluKHRoaXMuYm90dG9tLCByZWN0LmJvdHRvbSk7XG5cbiAgICBpZiAocmlnaHQgPj0gbGVmdCAmJiBib3R0b20gPj0gdG9wKSB7XG4gICAgICByZXR1cm4gbmV3IFJlY3QobGVmdCwgdG9wLCByaWdodCwgYm90dG9tKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIFJlY3QuZW1wdHk7XG4gICAgfVxuICB9XG59XG4iXX0=